Danh sách đề tài và hướng dẫn làm BTL môn Lập trình Hướng đối tượng | Trường Đại học Bách Khoa Hà Nội

BKPaint khác Paint ở các tính năng mở rộng sau: - Có chức năng Replay. Sau khi người dùng vẽ xong bức tranh và lưu lại. Khi Replay sẽ xem được một bộ phim hoạt hình diễn tả quá trình từ khi bắt đầu vẽ cho đến khi hoàn thành bức tranh. 

1
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mã số 01
I) Tên đề tài
Tên đề tài
Xây dựng một game nhập vai SimpleRPG
II) Mô tả yêu cầu
Người chơi điều khiển một hoặc nhiều nhân vật trong một bản đđược lưu trong một cấu trúc dữ
liệu, dụ: mảng hai chiều như hình bên, trong đó mỗi ô tương ứng với một dạng bản đồ khác nhau
(đất, cỏ, nước…) Trên bản đồ có các quái vật có thể di chuyển được.
Các nhân vật người chơi điều khiển quái vật các chỉ số xác định tình trạng thể lực (ví dụ
HP, MP, Attack, Defense, Speed…). Người chơi thể tấn công quái vật sử dụng các kỹ năng
đặc biệt. Tương tự, quái vật cũng có thể tìm đến và tấn công người chơi.
Người chơi thể di chuyển qua lại giữa các bản đồ khác nhau (ví dụ khi đi vào vùng M0, M1,
M2… trên bản đồ) hoặc đi đến kết thúc của trò chơi (ví dụ khi đi vào vùng END trên bản đồ).
M1
1
1
1
2
2
0
0
0
1
1
1
0
0
0
0
0
0
1
3
3
3
0
0
0
0
0
1
3
3
3
3
0
0
0
5
1
3
3
3
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
0
M0
0
1
1
1
1
0
4
0
1
1
1
1
1
1
1
1
1
III) Yêu cầu
Thể hiện bản đồ và các đối tượng trên bản đồ trên giao diện đồ họa
Điều khiển nhân vật di chuyển
Có các thao tác để tấn công quái vật
Quái vật khả ng di chuyển và tấn công người chơi (quái vật có thchia thành nhiều
loại: tấn công gần, loại có thể tấn công / bắn đạn từ xa, boss,)
Game hai chế độ chơi d / khó theo mức độ thông minh, di chuyển nhanh” hoặc
ợng máu của quái vật
IV) Chú ý:
Được quyền sử dụng các thư viện trên mạng, các nội dung vhình ảnh sẵn để giải quyết các vấn
đề về kỹ thuật như đồ họa, cấu trúc dữ liệu nhưng không được sao chép vmặt thiết kế, tổ chức
code của những game tương tự, nếu có.
2
N HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mã số 02
I) Tên đề tài:
Tên đề tài
Xây dựng chương trình Vẽ hình mở rộng - BKPaint
II) Mô tả yêu cầu:
BKPaint một chương trình vẽ hình với những yêu cầu bản như chương trình Paint của hệ điều
hành Windows. Chương trình cung cấp cho người dùng:
- Các công cụ bút cọ, tẩy, đổ màu.
- Lựa chọn nét bút
- Lựa chọn màu sắc
- Lựa chọn các đối tượng hình học (tròn vuông, tam giác, đường thẳng....) để vẽ hình.
- vv.
BKPaint khác Paint ở các tính năng mở rộng sau:
- chức năng Replay. Sau khi người dùng vẽ xong bức tranh lưu lại. Khi Replay sẽ xem
được một bộ phim hoạt hình diễn tả quá trình từ khi bắt đầu vẽ cho đến khi hoàn thành bức
tranh. Tốc độ replay có thể tùy biến từ giao diện chương trình, nhanh hay chậm. (Nhưng giao
diện không được giật)
- thư viện các bức tranh vẽ sẵn, chưa màu để người dùng hoàn thiện, màu ( thường
dành cho trẻ em). Các bức tranh này thể sưu tầm từ nguồn bên ngoài, hoặc tự tạo ra bằng
chính chương trình.
- Chức năng điểm thưởng: Nếu nhúng chương trình trên môi trường Web, để mọi người có thể
vẽ trực tuyến.
III) Chú ý:
Sinh viên có thể tham khảo một số trang Web để hiểu được yêu cầu bài toán, nhưng không sao chép
sử dụng source code của các phần mềm mã nguồn mở tương tự nếu có.
3
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mã số 03
I) Tên đề tài:
Tên đề tài
Xây dựng hệ thống luyện nghe tiếng Anh
II) Mô tả yêu cầu:
Hệ thống nhiều bài nghe, mỗi bài nghe được phân ra theo cấp độ (Level). Mỗi bài nghe lại được
chia nhỏ ra thành nhiều phần nghe. Mỗi phần nghe thời lượng từ 10 giây đến 25 giây. Sinh viên
có thể tham khảo một số giáo trình học tiếng Anh để lấy dữ liệu về các bài nghe phù hợp.
Chương trình có chức năng như sau:
- Người dùng chọn lựa Level nghe hợp lý. Đđơn giản, hệ thống chỉ cần 03 cấp độ nghe:
01, 02, 03. Level 01 cho phép gợi ý người dùng khi phải nhập các tên riêng, tên địa danh. Level 02
yêu cầu người dùng vẫn phải nhập tên riêng, nhưng thời lượng của phần nghe luôn luôn ít hơn hoặc
bằng 15 giây. Level 03: yêu cầu người dùng phải nhập tên riêng, thời lượng của phần nghe bắt
buộc phải dài hơn 20 giây.
- Khi người nghe đã chọn được Level hợp lý, thì họ sẽ được phép chọn bài nghe. Để thuận tiện
cho việc chọn thì người nghe phải được cho biết các thông tin sau về bài nghe: Tên của bài nghe,
toàn bộ thời lượng của bài nghe, một hoặc hai câu đầu tiên trong bài nghe.
- Khi người nghe chọn được bài nghe. Chương trình sẽ phát lần lượt từng phần nghe một cho
người nghe. Người nghe sau khi hoàn thành phần nghe thứ N thì mới được nghe tiếp phần nghe thứ
(N+1)
- Khi phát phần nghe thứ N, người dùng phải nhập lần lượt từng từ một của phần nghe. Khi
người dùng nhấn một phím, chương trình sẽ bắt skiện nhấp phím. Chương trình sẽ kiểm tra xem
với phím người dùng vừa nhấn, phải sẽ tạo thành một từ hợp lệ hay không? Nếu đúng thì sẽ
xóa từ đó đi cho phép người dùng nhập từ mới. Nếu không thì chương trình sẽ xóa đi chữ cái
người dùng vừa nhấn. Để nắm chi tiết, y truy cập địa chỉ sau: http://www.listen-and-
write.com/audio/choose/3292 Chọn lựa Full Mode rồi dùng thử.
- Khi người dùng nhập xong toàn bộ bài nghe, chương trình sẽ tính điểm. Đ đơn giản,
chương trình sẽ chỉ tính điểm theo công thức sau: 10* (11 x/y). Trong đó x là tổng thời gian người
dùng từ lúc bắt đầu nghe đến c kết thúc. Còn y tổng thời lượng của bài nghe. Chẳng hạn nếu
người dùng nghe mất 16 phút khi bài nghe dài 4 phút thì điểm của người dùng sẽ là: 10*(11
16/4) = 70.
Chọn bài nghe theo level
Thực hiện bài nghe và trả lời
Xem kết quả bài nghe và điểm số
Xem lịch sử học tập
Thống kê dạng biểu đồ cho thấy sbiến đổi trong quá trình luyện nghe
Các yêu cầu khác: Xây dựng giao diện ứng dụng thân thiện, dễ sử dụng, cung cấp phím tắt để thao
tác với các chức năng thuận tiện.
4
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – Mã số 04
I) Mục tiêu:
Tên đề tài
Xây dựng phần mềm quản lý tổ chức trông thi học kỳ
II) Mô tả yêu cầu:
Phần mềm quản lý tchức trông thi học kỳ cho phép qun thông tin v các k thi, phn
mm có th lưu thông tin ca nhiu k thi qua các năm học đ phc v cho công tác phân tích, thng
kê trong tương lai.
Mi hc k trong năm học người qun s dng phn mm to mt k thi mi. Khi lch
thi ca các lp trong k thi do phòng đào to gi đến, người qun lý s nhp d liu lch thi này vào
phn mềm. Người qun th nhp th công lch thi tng lp hoc dùng chc năng để import t
tp excel. Thông tin v lch thi có dng như sau:
Sau khi nhp, nếu sai sót người qun th sa đổi hoc xoá b thông tin. Tuy nhiên
khi đã kết thúc hc k thì thông tin s b khoá li để không th sa hoc xoá. Chú ý x lý tình hung
trùng lp thông tin khi nhp d liu đầu vào, đặc bit trong trường hp import t file excel (hoc khi
import nhiu ln).
Phn mm cung cp chc năng qun thông tin ca các ging viên ging dy lp hc.
Các thông tin cơ bản như: họ tên, b môn công tác, điện thoi, email, phòng làm vic. Người qun lý
th thêm, sa, xoá các thông tin này. Thông tin ging viên ging dy lp hc nào được xác định
theo mã lp trong lch thi trên ca tng hc k, sau khi có d liu lịch thi người qun th nhp
thông tin phân công ging dy th công hoc import t file excel.
Chc năng quản thông tin ca cán b coi thi. Các thông tin cơ bản như: họ tên, b môn
công tác, điện thoi, email, phòng làm vic. Người qun lý có th thêm, sa, xoá các thông tin này.
Chc năng quản thông tin phân công trông thi: cui hc k ging viên ging dy môn hc
th đăng ký với người qun để t chc trông thi cho các lp h ging dạy. Người qun lý
liên h vi các cán b trông thi và phân công cán b phù hp cho các lp thi.
Phn mm cn h tr người qun khi thc hin phân công bng ch kim tra các ràng
buc:
o Mi cán b trông thi không th trùng lch trông thi (tc ti mt thi điểm mt cán
b không th trông thi hai lp, ging như sinh viên đăng ký lch các môn hc không
được trùng nhau)
o S ng cán b trông thi ca mi lp ph thuc vào s ng sinh viên đăng ký hc:
s ng sinh viên < 60 1 cán b trông thi,
s ng sinh viên >= 60 2 cán b trông thi
Sau khi lp hc đã t chc thi xong, bài thi s đưc chuyn v người qun lý. Khi cán b
ging dy gặp người qun lý ly bài thi v chm và thanh toán kinh phí cho lp thi ca mình. Sau đó
người qun lý có th thay đổi trng thái ca lp đó trong lch thi là đã t chc thi.
Chc năng quản lý kinh phí: người qun khi t chc thi cho các lp hc s thu kinh phí t
cán b ging dy môn hc và dùng kinh phí này để: in n, phô tô đề thi, kinh phí t chc thi (tính
5
bng s ng sinh viên đăng ký nhân vi mt đơn giá) và tr kinh phí trông thi cho các cán b
trông thi. Các thông tin này cn ghi nhn chi tiết, đầy đủ để thông báo li cho cán b ging dy.
Chc năng báo cáo, thng kê: người qun lý có th tng hp:
Thông tin v các lp thi ca mt cán b ging dy trong mt hc k c th: danh sách lp,
tng kinh phí, kinh phí chi tiết cho mi lp, đã thanh toán hay chưa,…
Thông tin v các lp trông thi ca mt cán b trông t trong mt hc k c th: danh sách
lp, trng thái đã trông thi hay chưa trông thi, đã đưc thanh toán tin trông thi hay chưa,…
Thông tin tng hp v các lp trong c mt hc k
Chc năng tìm kiếm thông tin: tìm kiếm thông tin theo c tiêu chí khác nhau (sinh viên t đề
xut tìm kiếm thun tin và hiu qu)
Đối vi cán b ging dy cán b trông thi th vào phn mm để xem thông tin liên quan
đến mình hoc tìm kiếm thông tin. Các chc năng khác dành cho người qun lý.
Sinh viên xây dng cơ sở d liu quan h / hoc mô hình d liu phù hp cho phn mm.
P/S: khuyến khích xây dng h thng trên Web để thun tin cho vic truy cp.
6
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mã số 05
I) Tên đề tài:
Tên đề tài
Xây dựng trò chơi bắn tàu bay hoặc máy bay
II) Mô tả yêu cầu:
Cho phép người chơi chơi với máy.
a. Cho phép người chơi lựa chọn tàu chiến, sắp xếp đội hình (Mỗi loại tàu chiến có kích
thước và giá trị điểm số khác nhau)
b. Đánh dấu tọa độ bắn trật, bắn trúng của mỗi lượt chơi
c. Lưu lại kết quả điểm số đạt được (điểm số và số lần dự đoán người chơi đã thực hiện)
và lịch sử trận chiến (các bước dự đoán của người chơi và kết quả bắn trúng / bắn trượt).
2. Xây dựng thuật toán cho máy chơi ở hai mức độ dễ và khó
3. Cấu hình game: tắt bật âm thanh / âm nhạc / reset điểm số
● Chơi với máy
● Xem lịch sử điểm số
● Thay đổi cấu hình trò chơi
III) Chú ý:
- Được quyền sử dụng các thư viện trên mạng để giải quyết các vấn đề về kỹ thuật như đồ họa,
cấu trúc dữ liệu, các thông tin chung đều có thể tìm trên mạng.
7
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mã số 06
I) Tên đề tài:
Tên đề tài
Xây dựng trò chơi câu ếch
II) Mô tả yêu cầu:
1. Người chơi được cung cấp một cái cần câu ếch:
a. Người chơi thực hiện câu bằng cách tung lưỡi câu vào các con ếch trong ao,
có thể điều chỉnh hướng và độ mạnh của lực ném.
b. Chạm vào được ếch thì được tính điểm / bắt được hết ếch trong ao thì được
qua màn sang bài tiếp theo.
c. Độ khó của mỗi màn được xác định bằng số lượng ếch trong ao và các con
ếch có thể di chuyển. Các con ếch trong ao có thể nhô lên, lặn xuống, di chuyển sang
trái, sang phải, tốc độ tuỳ vào độ khó của từng màn chơi.
d. Mỗi lần ném câu sẽ bị ảnh hưởng của gió thổi, hướng gió, độ mạnh của gió
thay đổi sau mỗi lần ném câu.
e. Ghi nhận thành tích của người chơi trong mỗi màn, điểm số đạt được, số lần
ném câu.
2. Để tăng thêm độ khó của game sẽ xuất hiện các con cá nhảy lên hoặc chim bay qua
ngẫu nhiên khi ném và chạm vào lưỡi câu, nếu chạm thì sẽ không tính điểm và phải ném lại.
3. Cấu hình game: reset điểm số, tắt / bật âm thanh / âm nhạc.
● Chơi với máy
● Xem lịch sử điểm số
● Thay đổi cấu hình trò chơi
III) Chú ý:
- Được quyền sử dụng các thư viện trên mạng để giải quyết các vấn đề về kỹ thuật như đ
họa, cấu trúc dữ liệu, các thông tin chung đều có thể tìm trên mạng.
8
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mã số 07
I) Tên đề tài:
Tên đề tài
Xây dựng chương trình quản lý lỗi (sai hỏng) trong quá trình phát triển phần
mềm
II) Mô tả yêu cầu:
Dự án hệ thống theo dõi khiếm khuyết/sai hỏng phần mềm ý tưởng chính là cung cấp giải pháp cho
các công ty phần mềm để theo dõi các khiếm khuyết trong quá trình lập trình (coding), ở các cấp độ
kiểm thử khác nhau của một dự án.
Quy trình quản lý lỗi đơn giản:
Bước 1:Khi xác định ra lỗi, 1 vấn đề thì lỗi đó được ghi vào hệ thống quản lý lỗi. Ghi nhận
lỗi phải đày đủ thông tin, mô tả kỹ lỗi đó, xuất hiện như thế nào, thực hiện hoạt động đảm
bảo chất lượng gì?
o Thông thường ai phát hiện ra lỗi thì người đó phải là người ghi nhận lỗi đó.
o Các lỗi thường có thêm các thông tin phân loại (lỗi logic, lỗi giao diện, lỗi không
đúng theo yêu cầu,…), mức độ nghiêm trọng, độ ưu tiên sửa lỗi,…
Bước 2: Sau khi lỗi được ghi nhận sẽ phải thực hiện phân tích lỗi đó để trước tiên xác nhận
xem đó có phải là lỗi hay không, để có những hành động thích hợp.
Bước 3 : Lỗi được xác định là sẽ sửa thì phải được giao cho người thích hợp sửa. Người chịu
trách nhiệm sửa sẽ phải thực hiện sửa lỗi. Trong quá trình sửa lỗi, người sửa lỗi sẽ phải tự
kiểm thử đơn vị họ sửa trước khi thông báo lỗi đó đã được sửa.
Bước 4: Lỗi sau khi được sửa phải kiểm thử lại để xác nhận xem lỗi đó thực sự đã được sửa
chưa, nếu sửa chưa đúng thì mở lại lỗi đó, nếu sửa đúng rồi thì đóng lỗi.
=> Việc quản lý lỗi, quản lý sự cố chính là việc kiểm soát lỗi hay sự cố đó từ khi lỗi hay sự cố được
ghi nhận đến khi chúng ở trạng thái đóng.
=> Hệ thống cũng cần cung cấp các chức năng tìm kiếm thông tin và báo cáo thống kê về sửa lỗi
trong dự án.
9
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mã số 08
I) Tên đề tài:
Tên đề tài
Xây dựng chương trình quản lý thông tin để chăm sóc sức khỏe bà mẹ và trẻ em
cho một trạm y tế
II) Mô tả yêu cầu:
+ quản thông tin các thành viên gia đình, theo dõi chi tiết lịch sử tiêm chủng của các thành viên:
ngày tiêm, loại vắc xin, số lô, địa điểm tiêm chủng, các phản ứng sau tiêm (nếu có), (ghi nhận lịch
sử bằng cách chụp ảnh vỏ hộp thuốc, hoá đơn, sổ tiêm) ...
+ theo dõi các chỉ số dinh dưỡng (chiều cao, cân nặng) của trẻ. Các chỉ số dinh dưỡng được trực
quan hóa thành các biểu đồ ng trưởng theo tiêu chuẩn của Tổ chức Y tế thế giới. đưa ra cảnh báo
về tình trạng cơ thể: suy dinh dưỡng, thừa cân béo phì,…
+ thông tin thai kỳ của bà mẹ mang thai: chỉ số cân nặng, thời gian cần thăm khám / siêu âm
+ tìm kiếm thông tin các phòng khám / phòng tiêm chủng
+ hỗ trợ nhắc thông tin của trẻ với cha mẹ về lịch chích ngừa định kỳ hàng tháng, cụ thể trước ngày
chích và trong ngày chích thông qua cảnh báo và email.
Hệ thống hỗ trợ cán bộ y tế về số lượng mũi vaccine các loại trong từng tháng, lịch chích dự kiến,
thống tình trạng phát triển của trẻ. Ngoài ra, hệ thống cung cấp chế tạo sự kiện cho các nhóm
phụ nữ theo độ tuổi để chắm sóc sức khỏe và đăng ký cùng với gửi thông tin qua email.
10
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mã số 09
I) Tên đề tài:
Tên đề tài
Xây dựng chương trình tổng hợp so sánh giá của các sản phẩm điện tử / thực
phẩm
II) Mô tả yêu cầu:
- Inspection các website về siêu thị điện tử / thực phẩm
- Thu thập dữ liệu về hàng hoá và thực hiện chuẩn hoá, xử lý chuỗi để giảm sai sót trong lưu trữ, tìm
hiểu cơ chế đồng bộ dữ liệu
- Thu thập các dữ liệu đánh giá của người mua về sản phẩm (đánh giá sao)
- So sánh, lưu trữ, xây dựng mô hình lưu trữ phù hợp để tăng hiệu suất sử dụng
- Hệ thống / ứng dụng giúp người sử dụng có thể tìm kiếm sản phẩm giá rẻ và nơi để mua hàng trực
tuyến mà không cần tốn thời gian đlựa chọn
III) Chú ý:
- Được quyền sử dụng các thư viện trên mạng để giải quyết các vấn đề về kỹ thuật như đồ họa,
cấu trúc dữ liệu, thu thập thông tin, các thông tin chung đều có thể tìm trên mạng.
11
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mã số 10
I) Tên đề tài:
Tên đề tài
Xây dựng chương trình quản lý phẫu thuật trong bệnh viện
II) Mô tả yêu cầu:
Quản lý các phòng mổ, cụ thể là việc quản phân lịch của các ca mổ, quản và cập nhật thông
tin của các nội dung liên quan sau khi mổ xong.
Hệ thống được xây dựng dựa trên qui trình đóđưa các thông tin liên quan như bệnh án các
đưa vào trong hệ thống để tiến hành sắp xếp lịch. Việc sắp xếp lịch sẽ được diễn ra sau khi
phòng vật y tế kiểm tra đủ số lượng, hệ thống sẽ thực hiện lên lịch dựa trên số phòng m
sẵn trong bệnh viện kết hợp với đưu tiên của các loại bệnh, tính khẩn cấp của ca mổ
cùng vào phòng mổ phù hợp với ca mổ.
Phòng mổ được qui định cụ thể cho một số loại bệnh nhất định. Một ca mngoài bác sỹ còn
phải kỹ thuật viên bao gồm y tá, kỹ thuật viên, nhân viên hỗ trợ . Các điều dưỡng
trưởng sẽ thực hiện quản giám sát ghi nhận trạng thái để cập nhật tiến trình cho các ca
mổ và thực hiện điều phối các phòng hồi tỉnh sau khi mổ, các phòng hồi sức sau khi hồi tỉnh.
Cuối cùng, các thông tin y lệnh được ghi nhận trong hệ thống sau khi mổ xong (hậu phẫu) đ
từ đó các y tá có thể chăm sóc ghi nhận thông tin chăm sóc đđưa vào trong bệnh án cho đến
khi bệnh nhận được chuyển lên khoa.
Ứng dụng thực hiện được các chức năng như sau:
o Đối với điều dưỡng trưởng: Đưa thông tin bệnh án cần xếp lịch, Giám sát cập
nhật, thay đổi các thông tin của ca mổ, Cập nhật thông tin về hồi tỉnh hồi sức ,
Nhập y lệnh …
o Đối với y chăm sóc sau khi mổ: Nhận thông báo ghi nhận nội dung chăm sóc
của bệnh nhân, …
o Nhân viên của phòng vật y tế: Duyệt các thông tin vật tư liên quan đến các ca mổ
cần được lên lịch, …
Ngoài ra phần mềm có thể: Gửi các thông báo đến những con người liên quan đến ca mổ,
Vận hành tự động qui trình liên quan đến lên lịch và quản lý tiến trình diễn tiến của lịch, …
III) Chú ý:
- Được quyền sử dụng các thư viện trên mạng để giải quyết các vấn đề về kỹ thuật như đồ họa,
cấu trúc dữ liệu, thu thập thông tin, các thông tin chung đều có thể tìm trên mạng.
12
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mã số 11
I) Tên đề tài:
Tên đề tài
Quản lý chi tiêu hợp lý
II) Mô tả yêu cầu:
Ứng dụng xây dựng chương trình hỗ trợ người dùng trong việc quản chi tiêu hàng tháng
dựa trên các khoảng thu nhập và kế hoạch đã được đề ra trong tháng trước đó.
o Lưu trữ các khoản thu, chi phát sinh hàng ngày do người dùng liệt kê.
o Quản lý các mục chứa tiền khác nhau.
o Thống kê tình hình thu chi.
Ứng dụng cũng hỗ trợ người dùng trong việc đề xuất mua các sản phẩm theo thứ tự ưu tiên
về chi phí họ đang có dựa trên các sản phẩm người sử dụng mong muốn được có.
Ứng dụng đề xuất kế hoạch trong tháng tiếp theo cho người dùng và tạo sự tiện ích nhập liệu
cho người dùng một cách hợp nhất đề xuất phù hợp cùng với sự thông báo cho người
dùng khi điều kiện thỏa mãn.
13
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mã số 12
I) Tên đề tài:
Tên đề tài
Quản lý tủ thuốc gia đình
II) Mô tả yêu cầu:
Ứng dụng quản lý thông tin trong tủ thuốc tại gia đình
o Lưu trữ thông tin các loại thuốc hiện có trong tthuốc các thành phần hướng dẫn
sử dụng với mục đích thông báo người dùng thời gian hết hạn cùng với gợi ý cho
người dùng các thành phần tác dụng của thuốc khi họ gặp phải vấn đề về bệnh thông
thường hàng ngày.
o Chức năng cơ bản:
Nhập thuốc cùng với khối lượng và ngày hết hạn vào hệ thống,
Cảnh báo người dùng khi thuốc hết hạn và tìm kiếm các thông tin của thuốc,
Cho phép người tìm kiếm thuốc trong tủ thuốc hay tìm kiếm theo bệnh,
Cho phép người dùng đọc các thông tin sử dụng thuốc,
Hỗ trợ phần tin tức liên quan đến thuốc cho người dùng,
Hỗ trợ phân loại thuốc, lưu trữ toa thuốc và nhắc nhở thuốc uống theo toa,
Nâng cao: thu thập dữ liệu từ các website thuốc đcung cấp thông tin hướng
dẫn cho người dùng.
14
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mã số 13
I) Tên đề tài:
Tên đề tài
Đề tài nhóm sinh viên tđề xuất
II) Mô tả yêu cầu:
Sinh viên mô tả thông tin chi tiết vđề tài và gửi email cho thầy
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
──────── * ───────
BÀI TẬP LỚN
MÔN: LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG
<TÊN ĐỀ TÀI>
Sinh viên thực hiện : <Tên sinh viên>
Mã sinh viên :
Lớp : XXXX Khoá XXXX
Giáo viên hướng dẫn : ThS. Nguyễn Mạnh Tuấn
Hà Nội, tháng 11 năm 2019
CuuDuongThanCong.com https://fb.com/tailieudientucntt
cuu duong than cong . com
IT3100 Lp trình hƣớng đối tƣợng 20192
Nhóm XX
2
MỤC LỤC
MỤC LỤC ...................................................................................................................... 2
LỜI NÓI ĐẦU ................................................................................................................ 3
PHÂN CÔNG THÀNH VIÊN TRONG NHÓM .......... Error! Bookmark not defined.
CHƢƠNG 1. KHẢO SÁT, ĐẶC TẢ YÊU CẦU BÀI TOÁN ................................ 5
1.1. Mô tả yêu cầu bài toán ..................................................................................... 5
1.2. Biểu đồ use case ................................................................................................ 5
1.2.1. Biểu đồ use case tổng quan ......................................................................... 5
1.2.2. Biểu đồ use case phân rã mức 2 .................................................................. 5
1.3. Đặc tả use case .................................................................................................. 5
CHƢƠNG 2. PHÂN TÍCH THIẾT KẾ BÀI TOÁN .............................................. 6
2.1. Thiết kế Cơ sở dữ liệu ...................................................................................... 6
2.2. Biểu đồ trình tự ................................................................................................ 6
2.3. Biểu đồ lớp ........................................................................................................ 6
2.4. Thiết kế chi tiết lớp .......................................................................................... 6
CHƢƠNG 3. CÔNG NGHỆ VÀ THUẬT TOÁN SỬ DỤNG ............................... 7
CHƢƠNG 4. XÂY DỰNG CHƢƠNG TRÌNH MINH HỌA ................................ 8
4.1. Kết quả chƣơng trình minh họa ..................................................................... 8
4.2. Giao diện chƣơng trình ................................................................................... 8
KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN ................................................................. 10
TÀI LIỆU THAM KHẢO ........................................................................................... 11
PHỤ LỤC ..................................................................................................................... 12
CuuDuongThanCong.com https://fb.com/tailieudientucntt
cuu duong than cong . com
IT3100 Lp trình hƣớng đối tƣợng 20192
Nhóm XX
3
LỜI NÓI ĐU
<Nêu lý do chọn đề tài này, tầm quan trọng của đề tài này>
<Mô tả sơ qua về đề tài, quá trình tiếp cận và hoàn thiện đề tài>
CuuDuongThanCong.com https://fb.com/tailieudientucntt
cuu duong than cong . com
IT3100 Lp trình hƣớng đối tƣợng 20192
Nhóm XX
4
PHÂN CÔNG THÀNH VIÊN TRONG NHÓM
<Danh sách các thành viên trong nhóm>
<Phân công nhiệm vcthể của mỗi thành viên trong việc thực hiện bài tập
lớn môn học và đánh giá mức độ hoàn thành>
Họ và tên
Email
Điện thoại
Công việc thực hiện
Đánh giá
CuuDuongThanCong.com https://fb.com/tailieudientucntt
cuu duong than cong . com
IT3100 Lp trình hƣớng đối tƣợng 20192
Nhóm XX
5
CHƢƠNG 1. KHẢO SÁT, ĐẶC TẢ YÊU CẦU BÀI TOÁN
<Trình y, tả chi tiết về c kết quả khảo sát về bài toán thông qua đề bài
những yêu cầu từ giáo viên sau những lần trao đổi, gặp mặt>
<Đặc tả yêu cầu bài toán bao gồm:
- Biểu đồ use case tổng quan
- Biểu đồ use case phân rã cho các chức năng phức tạp.
- Đặc tả use case cho những use case chính, nghiệp vụ quan trọng của bài toán>
1.1. Mô tả yêu cầu bài toán
<Mô tả bằng lời về bài toán được giao>
1.2. Biểu đồ use case
1.2.1. Biểu đồ use case tổng quan
<Vẽ và giới thiệu qua về biểu đồ use case tổng quan>
1.2.2. Biểu đồ use case phân rã mức 2
<Vẽ và giới thiệu qua biểu đồ use case phân rã cho những use case phức tạp>
1.3. Đặc tả use case
<Đặc tả cho 2-4 use case chính, biểu thị cho những nghiệp vụ quan trọng của bài toán>
<Có thể phần y hoặc không; với những nghiệp vụ phức tạp, thvẽ thêm biểu
đồ hoạt động>
CuuDuongThanCong.com https://fb.com/tailieudientucntt
cuu duong than cong . com
IT3100 Lp trình hƣớng đối tƣợng 20192
Nhóm XX
6
CHƢƠNG 2. PHÂN TÍCH THIẾT KẾ BÀI TOÁN
2.1. Thiết kế Cơ sở dữ liệu hoặc Cấu trúc tệp dữ liệu
<Nếu có>
2.2. Biểu đồ trình tự
<Vẽ giới thiệu qua về biểu đồ trình tự cho 1-2 use case chính, biểu thị nghiệp vụ
quan trọng của bài toán>
2.3. Biểu đồ lớp
<Vẽ và giới thiệu về các lớp, mối quan hệ trong Biểu đồ lớp>
<Chỉ rõ mỗi lớp nằm tầng nào: cơ sở dữ liệu/nghiệp vụ/giao diện. Nếu cần, tách làm
nhiều biểu đồ lớp một cách hợp lý để trình bày tốt hơn>
2.4. Thiết kế chi tiết lớp
<Mô tả chi tiết về các lớp quan trọng>
<Có thmô tả theo mu CRC (class responsibility card)>
<Mô tả các thuộc tính và phương thức trong các lớp>
<Phân tích các kthuật thiết kế và lập trình hƣớng đối tƣợng đã áp dụng
trong nội dung bài tp lớn nhƣ thế nào>
CuuDuongThanCong.com https://fb.com/tailieudientucntt
cuu duong than cong . com
| 1/26

Preview text:

MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – Mã số 01 I) Tên đề tài Tên đề tài
Xây dựng một game nhập vai SimpleRPG II) Mô tả yêu cầu
Người chơi điều khiển một hoặc nhiều nhân vật trong một bản đồ được lưu trong một cấu trúc dữ
liệu, ví dụ: mảng hai chiều như hình bên, trong đó mỗi ô tương ứng với một dạng bản đồ khác nhau
(đất, cỏ, nước…) Trên bản đồ có các quái vật có thể di chuyển được.
Các nhân vật người chơi điều khiển và quái vật có các chỉ số xác định tình trạng và thể lực (ví dụ
HP, MP, Attack, Defense, Speed…). Người chơi có thể tấn công quái vật và sử dụng các kỹ năng
đặc biệt. Tương tự, quái vật cũng có thể tìm đến và tấn công người chơi.
Người chơi có thể di chuyển qua lại giữa các bản đồ khác nhau (ví dụ khi đi vào vùng M0, M1,
M2… trên bản đồ) hoặc đi đến kết thúc của trò chơi (ví dụ khi đi vào vùng END trên bản đồ).
M1 1 1 1 2 2 0 0 0 END 1
1 1 0 0 0 0 0 0 0 1
3 3 3 0 0 0 0 0 5 1
3 3 3 3 0 0 0 5 5 1
3 3 3 3 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 1 0 1 0 0
0 0 0 0 1 0 0 0 1
M0 0 1 1 1 1 0 4 0 1 1
1 1 1 1 1 1 1 1 1 III) Yêu cầu
• Thể hiện bản đồ và các đối tượng trên bản đồ trên giao diện đồ họa
• Điều khiển nhân vật di chuyển
• Có các thao tác để tấn công quái vật
• Quái vật có khả năng di chuyển và tấn công người chơi (quái vật có thể chia thành nhiều
loại: tấn công gần, loại có thể tấn công / bắn đạn từ xa, boss,…)
• Game có hai chế độ chơi dễ / khó theo mức độ “thông minh”, “di chuyển nhanh” hoặc
“lượng máu” của quái vật IV) Chú ý:
Được quyền sử dụng các thư viện trên mạng, các nội dung về hình ảnh có sẵn để giải quyết các vấn
đề về kỹ thuật như đồ họa, cấu trúc dữ liệu nhưng không được sao chép về mặt thiết kế, tổ chức và
code của những game tương tự, nếu có. 1
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – Mã số 02 I) Tên đề tài: Tên đề tài
Xây dựng chương trình Vẽ hình mở rộng - BKPaint II) Mô tả yêu cầu:
BKPaint là một chương trình vẽ hình với những yêu cầu cơ bản như chương trình Paint của hệ điều
hành Windows. Chương trình cung cấp cho người dùng:
- Các công cụ bút cọ, tẩy, đổ màu. - Lựa chọn nét bút - Lựa chọn màu sắc
- Lựa chọn các đối tượng hình học (tròn vuông, tam giác, đường thẳng....) để vẽ hình. - vv.
BKPaint khác Paint ở các tính năng mở rộng sau:
- Có chức năng Replay. Sau khi người dùng vẽ xong bức tranh và lưu lại. Khi Replay sẽ xem
được một bộ phim hoạt hình diễn tả quá trình từ khi bắt đầu vẽ cho đến khi hoàn thành bức
tranh. Tốc độ replay có thể tùy biến từ giao diện chương trình, nhanh hay chậm. (Nhưng giao
diện không được giật)
- Có thư viện các bức tranh vẽ sẵn, chưa tô màu để người dùng hoàn thiện, tô màu ( thường
dành cho trẻ em). Các bức tranh này có thể sưu tầm từ nguồn bên ngoài, hoặc tự tạo ra bằng chính chương trình.
- Chức năng điểm thưởng: Nếu nhúng chương trình trên môi trường Web, để mọi người có thể vẽ trực tuyến. III) Chú ý:
Sinh viên có thể tham khảo một số trang Web để hiểu được yêu cầu bài toán, nhưng không sao chép
sử dụng source code của các phần mềm mã nguồn mở tương tự nếu có. 2
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – Mã số 03 I) Tên đề tài: Tên đề tài
Xây dựng hệ thống luyện nghe tiếng Anh II) Mô tả yêu cầu:
Hệ thống có nhiều bài nghe, mỗi bài nghe được phân ra theo cấp độ (Level). Mỗi bài nghe lại được
chia nhỏ ra thành nhiều phần nghe. Mỗi phần nghe có thời lượng từ 10 giây đến 25 giây. Sinh viên
có thể tham khảo một số giáo trình học tiếng Anh để lấy dữ liệu về các bài nghe phù hợp.
Chương trình có chức năng như sau: -
Người dùng chọn lựa Level nghe hợp lý. Để đơn giản, hệ thống chỉ cần có 03 cấp độ nghe:
01, 02, 03. Level 01 cho phép gợi ý người dùng khi phải nhập các tên riêng, tên địa danh. Level 02
yêu cầu người dùng vẫn phải nhập tên riêng, nhưng thời lượng của phần nghe luôn luôn ít hơn hoặc
bằng 15 giây. Level 03: yêu cầu người dùng phải nhập tên riêng, và thời lượng của phần nghe bắt
buộc phải dài hơn 20 giây. -
Khi người nghe đã chọn được Level hợp lý, thì họ sẽ được phép chọn bài nghe. Để thuận tiện
cho việc chọn thì người nghe phải được cho biết các thông tin sau về bài nghe: Tên của bài nghe,
toàn bộ thời lượng của bài nghe, một hoặc hai câu đầu tiên trong bài nghe. -
Khi người nghe chọn được bài nghe. Chương trình sẽ phát lần lượt từng phần nghe một cho
người nghe. Người nghe sau khi hoàn thành phần nghe thứ N thì mới được nghe tiếp phần nghe thứ (N+1) -
Khi phát phần nghe thứ N, người dùng phải nhập lần lượt từng từ một của phần nghe. Khi
người dùng nhấn một phím, chương trình sẽ bắt sự kiện nhấp phím. Chương trình sẽ kiểm tra xem
với phím mà người dùng vừa nhấn, có phải sẽ tạo thành một từ hợp lệ hay không? Nếu đúng thì sẽ
xóa từ đó đi và cho phép người dùng nhập từ mới. Nếu không thì chương trình sẽ xóa đi chữ cái mà
người dùng vừa nhấn. Để nắm rõ chi tiết, hãy truy cập địa chỉ sau: http://www.listen-and-
write.com/audio/choose/3292 Chọn lựa Full Mode rồi dùng thử. -
Khi người dùng nhập xong toàn bộ bài nghe, chương trình sẽ tính điểm. Để đơn giản,
chương trình sẽ chỉ tính điểm theo công thức sau: 10* (11 – x/y). Trong đó x là tổng thời gian người
dùng từ lúc bắt đầu nghe đến lúc kết thúc. Còn y là tổng thời lượng của bài nghe. Chẳng hạn nếu
người dùng nghe mất 16 phút khi bài nghe là dài 4 phút thì điểm của người dùng sẽ là: 10*(11 – 16/4) = 70.
• Chọn bài nghe theo level
• Thực hiện bài nghe và trả lời
• Xem kết quả bài nghe và điểm số
• Xem lịch sử học tập
• Thống kê dạng biểu đồ cho thấy sự biến đổi trong quá trình luyện nghe
Các yêu cầu khác: Xây dựng giao diện ứng dụng thân thiện, dễ sử dụng, cung cấp phím tắt để thao
tác với các chức năng thuận tiện. 3
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – Mã số 04 I) Mục tiêu: Tên đề tài
Xây dựng phần mềm quản lý tổ chức trông thi học kỳ II) Mô tả yêu cầu:
Phần mềm quản lý tổ chức trông thi học kỳ cho phép quản lý thông tin về các kỳ thi, phần
mềm có thể lưu thông tin của nhiều kỳ thi qua các năm học để phục vụ cho công tác phân tích, thống kê trong tương lai.
Mỗi học kỳ trong năm học người quản lý sử dụng phần mềm tạo một kỳ thi mới. Khi có lịch
thi của các lớp trong kỳ thi do phòng đào tạo gửi đến, người quản lý sẽ nhập dữ liệu lịch thi này vào
phần mềm. Người quản lý có thể nhập thủ công lịch thi từng lớp hoặc dùng chức năng để import từ
tệp excel. Thông tin về lịch thi có dạng như sau:
Sau khi nhập, nếu có sai sót người quản lý có thể sửa đổi hoặc xoá bỏ thông tin. Tuy nhiên
khi đã kết thúc học kỳ thì thông tin sẽ bị khoá lại để không thể sửa hoặc xoá. Chú ý xử lý tình huống
trùng lặp thông tin khi nhập dữ liệu đầu vào, đặc biệt trong trường hợp import từ file excel (hoặc khi import nhiều lần).
Phần mềm cung cấp chức năng quản lý là thông tin của các giảng viên giảng dạy lớp học.
Các thông tin cơ bản như: họ tên, bộ môn công tác, điện thoại, email, phòng làm việc. Người quản lý
có thể thêm, sửa, xoá các thông tin này. Thông tin giảng viên giảng dạy lớp học nào được xác định
theo mã lớp trong lịch thi trên của từng học kỳ, sau khi có dữ liệu lịch thi người quản lý có thể nhập
thông tin phân công giảng dạy thủ công hoặc import từ file excel.
Chức năng quản lý thông tin của cán bộ coi thi. Các thông tin cơ bản như: họ tên, bộ môn
công tác, điện thoại, email, phòng làm việc. Người quản lý có thể thêm, sửa, xoá các thông tin này.
Chức năng quản lý thông tin phân công trông thi: cuối học kỳ giảng viên giảng dạy môn học
có thể đăng ký với người quản lý để tổ chức trông thi cho các lớp mà họ giảng dạy. Người quản lý
liên hệ với các cán bộ trông thi và phân công cán bộ phù hợp cho các lớp thi.
• Phần mềm cần hỗ trợ người quản lý khi thực hiện phân công bằng cách kiểm tra các ràng buộc:
o Mỗi cán bộ trông thi không thể trùng lịch trông thi (tức là tại một thời điểm một cán
bộ không thể trông thi hai lớp, giống như sinh viên đăng ký lịch các môn học không được trùng nhau)
o Số lượng cán bộ trông thi của mỗi lớp phụ thuộc vào số lượng sinh viên đăng ký học:
▪ số lượng sinh viên < 60 → 1 cán bộ trông thi,
▪ số lượng sinh viên >= 60 → 2 cán bộ trông thi
Sau khi lớp học đã tổ chức thi xong, bài thi sẽ được chuyển về người quản lý. Khi cán bộ
giảng dạy gặp người quản lý lấy bài thi về chấm và thanh toán kinh phí cho lớp thi của mình. Sau đó
người quản lý có thể thay đổi trạng thái của lớp đó trong lịch thi là đã tổ chức thi.
Chức năng quản lý kinh phí: người quản lý khi tổ chức thi cho các lớp học sẽ thu kinh phí từ
cán bộ giảng dạy môn học và dùng kinh phí này để: in ấn, phô tô đề thi, kinh phí tổ chức thi (tính 4
bằng số lượng sinh viên đăng ký nhân với một đơn giá) và trả kinh phí trông thi cho các cán bộ
trông thi. Các thông tin này cần ghi nhận chi tiết, đầy đủ để thông báo lại cho cán bộ giảng dạy.
Chức năng báo cáo, thống kê: người quản lý có thể tổng hợp:
• Thông tin về các lớp thi của một cán bộ giảng dạy trong một học kỳ cụ thể: danh sách lớp,
tổng kinh phí, kinh phí chi tiết cho mỗi lớp, đã thanh toán hay chưa,…
• Thông tin về các lớp trông thi của một cán bộ trông tị trong một học kỳ cụ thể: danh sách
lớp, trạng thái đã trông thi hay chưa trông thi, đã được thanh toán tiền trông thi hay chưa,…
• Thông tin tổng hợp về các lớp trong cả một học kỳ
Chức năng tìm kiếm thông tin: tìm kiếm thông tin theo các tiêu chí khác nhau (sinh viên tự đề
xuất tìm kiếm thuận tiện và hiệu quả)
Đối với cán bộ giảng dạy và cán bộ trông thi có thể vào phần mềm để xem thông tin liên quan
đến mình hoặc tìm kiếm thông tin. Các chức năng khác dành cho người quản lý.
Sinh viên xây dựng cơ sở dữ liệu quan hệ / hoặc mô hình dữ liệu phù hợp cho phần mềm.
P/S: khuyến khích xây dựng hệ thống trên Web để thuận tiện cho việc truy cập. 5
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – Mã số 05 I) Tên đề tài: Tên đề tài
Xây dựng trò chơi bắn tàu bay hoặc máy bay II) Mô tả yêu cầu:
Cho phép người chơi chơi với máy.
a. Cho phép người chơi lựa chọn tàu chiến, sắp xếp đội hình (Mỗi loại tàu chiến có kích
thước và giá trị điểm số khác nhau)
b. Đánh dấu tọa độ bắn trật, bắn trúng của mỗi lượt chơi
c. Lưu lại kết quả điểm số đạt được (điểm số và số lần dự đoán người chơi đã thực hiện)
và lịch sử trận chiến (các bước dự đoán của người chơi và kết quả bắn trúng / bắn trượt).
2. Xây dựng thuật toán cho máy chơi ở hai mức độ dễ và khó
3. Cấu hình game: tắt bật âm thanh / âm nhạc / reset điểm số ● Chơi với máy
● Xem lịch sử điểm số
● Thay đổi cấu hình trò chơi III) Chú ý:
- Được quyền sử dụng các thư viện trên mạng để giải quyết các vấn đề về kỹ thuật như đồ họa,
cấu trúc dữ liệu, các thông tin chung đều có thể tìm trên mạng. 6
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – Mã số 06 I) Tên đề tài: Tên đề tài
Xây dựng trò chơi câu ếch II) Mô tả yêu cầu:
1. Người chơi được cung cấp một cái cần câu ếch:
a. Người chơi thực hiện câu bằng cách tung lưỡi câu vào các con ếch trong ao,
có thể điều chỉnh hướng và độ mạnh của lực ném.
b. Chạm vào được ếch thì được tính điểm / bắt được hết ếch trong ao thì được
qua màn sang bài tiếp theo.
c. Độ khó của mỗi màn được xác định bằng số lượng ếch trong ao và các con
ếch có thể di chuyển. Các con ếch trong ao có thể nhô lên, lặn xuống, di chuyển sang
trái, sang phải, tốc độ tuỳ vào độ khó của từng màn chơi.
d. Mỗi lần ném câu sẽ bị ảnh hưởng của gió thổi, hướng gió, độ mạnh của gió
thay đổi sau mỗi lần ném câu.
e. Ghi nhận thành tích của người chơi trong mỗi màn, điểm số đạt được, số lần ném câu.
2. Để tăng thêm độ khó của game sẽ xuất hiện các con cá nhảy lên hoặc chim bay qua
ngẫu nhiên khi ném và chạm vào lưỡi câu, nếu chạm thì sẽ không tính điểm và phải ném lại.
3. Cấu hình game: reset điểm số, tắt / bật âm thanh / âm nhạc. ● Chơi với máy
● Xem lịch sử điểm số
● Thay đổi cấu hình trò chơi III) Chú ý:
- Được quyền sử dụng các thư viện trên mạng để giải quyết các vấn đề về kỹ thuật như đồ
họa, cấu trúc dữ liệu, các thông tin chung đều có thể tìm trên mạng. 7
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – Mã số 07 I) Tên đề tài: Tên đề tài
Xây dựng chương trình quản lý lỗi (sai hỏng) trong quá trình phát triển phần mềm II) Mô tả yêu cầu:
Dự án hệ thống theo dõi khiếm khuyết/sai hỏng phần mềm ý tưởng chính là cung cấp giải pháp cho
các công ty phần mềm để theo dõi các khiếm khuyết trong quá trình lập trình (coding), ở các cấp độ
kiểm thử khác nhau của một dự án.
Quy trình quản lý lỗi đơn giản:
• Bước 1:Khi xác định ra lỗi, 1 vấn đề thì lỗi đó được ghi vào hệ thống quản lý lỗi. Ghi nhận
lỗi phải đày đủ thông tin, mô tả kỹ lỗi đó, xuất hiện như thế nào, thực hiện hoạt động đảm bảo chất lượng gì?
o Thông thường ai phát hiện ra lỗi thì người đó phải là người ghi nhận lỗi đó.
o Các lỗi thường có thêm các thông tin phân loại (lỗi logic, lỗi giao diện, lỗi không
đúng theo yêu cầu,…), mức độ nghiêm trọng, độ ưu tiên sửa lỗi,…
• Bước 2: Sau khi lỗi được ghi nhận sẽ phải thực hiện phân tích lỗi đó để trước tiên xác nhận
xem đó có phải là lỗi hay không, để có những hành động thích hợp.
• Bước 3 : Lỗi được xác định là sẽ sửa thì phải được giao cho người thích hợp sửa. Người chịu
trách nhiệm sửa sẽ phải thực hiện sửa lỗi. Trong quá trình sửa lỗi, người sửa lỗi sẽ phải tự
kiểm thử đơn vị họ sửa trước khi thông báo lỗi đó đã được sửa.
• Bước 4: Lỗi sau khi được sửa phải kiểm thử lại để xác nhận xem lỗi đó thực sự đã được sửa
chưa, nếu sửa chưa đúng thì mở lại lỗi đó, nếu sửa đúng rồi thì đóng lỗi.
=> Việc quản lý lỗi, quản lý sự cố chính là việc kiểm soát lỗi hay sự cố đó từ khi lỗi hay sự cố được
ghi nhận đến khi chúng ở trạng thái đóng.
=> Hệ thống cũng cần cung cấp các chức năng tìm kiếm thông tin và báo cáo thống kê về sửa lỗi trong dự án. 8
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – Mã số 08 I) Tên đề tài: Tên đề tài
Xây dựng chương trình quản lý thông tin để chăm sóc sức khỏe bà mẹ và trẻ em cho một trạm y tế II) Mô tả yêu cầu:
+ quản lý thông tin các thành viên gia đình, theo dõi chi tiết lịch sử tiêm chủng của các thành viên:
ngày tiêm, loại vắc xin, số lô, địa điểm tiêm chủng, các phản ứng sau tiêm (nếu có), (ghi nhận lịch
sử bằng cách chụp ảnh vỏ hộp thuốc, hoá đơn, sổ tiêm) ...
+ theo dõi các chỉ số dinh dưỡng (chiều cao, cân nặng) của trẻ. Các chỉ số dinh dưỡng được trực
quan hóa thành các biểu đồ tăng trưởng theo tiêu chuẩn của Tổ chức Y tế thế giới. đưa ra cảnh báo
về tình trạng cơ thể: suy dinh dưỡng, thừa cân béo phì,…
+ thông tin thai kỳ của bà mẹ mang thai: chỉ số cân nặng, thời gian cần thăm khám / siêu âm
+ tìm kiếm thông tin các phòng khám / phòng tiêm chủng
+ hỗ trợ nhắc thông tin của trẻ với cha mẹ về lịch chích ngừa định kỳ hàng tháng, cụ thể trước ngày
chích và trong ngày chích thông qua cảnh báo và email.
Hệ thống hỗ trợ cán bộ y tế về số lượng mũi vaccine các loại trong từng tháng, lịch chích dự kiến,
thống kê tình trạng phát triển của trẻ. Ngoài ra, hệ thống cung cấp cơ chế tạo sự kiện cho các nhóm
phụ nữ theo độ tuổi để chắm sóc sức khỏe và đăng ký cùng với gửi thông tin qua email. 9
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – Mã số 09 I) Tên đề tài: Tên đề tài
Xây dựng chương trình tổng hợp và so sánh giá của các sản phẩm điện tử / thực phẩm II) Mô tả yêu cầu:
- Inspection các website về siêu thị điện tử / thực phẩm
- Thu thập dữ liệu về hàng hoá và thực hiện chuẩn hoá, xử lý chuỗi để giảm sai sót trong lưu trữ, tìm
hiểu cơ chế đồng bộ dữ liệu
- Thu thập các dữ liệu đánh giá của người mua về sản phẩm (đánh giá sao)
- So sánh, lưu trữ, xây dựng mô hình lưu trữ phù hợp để tăng hiệu suất sử dụng
- Hệ thống / ứng dụng giúp người sử dụng có thể tìm kiếm sản phẩm giá rẻ và nơi để mua hàng trực
tuyến mà không cần tốn thời gian để lựa chọn III) Chú ý:
- Được quyền sử dụng các thư viện trên mạng để giải quyết các vấn đề về kỹ thuật như đồ họa,
cấu trúc dữ liệu, thu thập thông tin, các thông tin chung đều có thể tìm trên mạng. 10
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – Mã số 10 I) Tên đề tài: Tên đề tài
Xây dựng chương trình quản lý phẫu thuật trong bệnh viện II) Mô tả yêu cầu:
Quản lý các phòng mổ, cụ thể là việc quản lý và phân lịch của các ca mổ, quản lý và cập nhật thông
tin của các nội dung liên quan sau khi mổ xong.
• Hệ thống được xây dựng dựa trên qui trình đó là đưa các thông tin liên quan như bệnh án các
đưa vào trong hệ thống để tiến hành sắp xếp lịch. Việc sắp xếp lịch sẽ được diễn ra sau khi
phòng vật tư y tế kiểm tra đủ số lượng, hệ thống sẽ thực hiện lên lịch dựa trên số phòng mổ
có sẵn trong bệnh viện kết hợp với độ ưu tiên của các loại bệnh, tính khẩn cấp của ca mổ
cùng vào phòng mổ phù hợp với ca mổ.
• Phòng mổ được qui định cụ thể cho một số loại bệnh nhất định. Một ca mỗ ngoài bác sỹ còn
phải có kỹ thuật viên bao gồm y tá, kỹ thuật viên, nhân viên hỗ trợ …. Các điều dưỡng
trưởng sẽ thực hiện quản lý giám sát và ghi nhận trạng thái để cập nhật tiến trình cho các ca
mổ và thực hiện điều phối các phòng hồi tỉnh sau khi mổ, các phòng hồi sức sau khi hồi tỉnh.
• Cuối cùng, các thông tin y lệnh được ghi nhận trong hệ thống sau khi mổ xong (hậu phẫu) để
từ đó các y tá có thể chăm sóc ghi nhận thông tin chăm sóc để đưa vào trong bệnh án cho đến
khi bệnh nhận được chuyển lên khoa.
• Ứng dụng thực hiện được các chức năng như sau:
o Đối với điều dưỡng trưởng: Đưa thông tin bệnh án cần xếp lịch, Giám sát và cập
nhật, thay đổi các thông tin của ca mổ, Cập nhật thông tin về hồi tỉnh và hồi sức , Nhập y lệnh …
o Đối với y tá chăm sóc sau khi mổ: Nhận thông báo và ghi nhận nội dung chăm sóc của bệnh nhân, …
o Nhân viên của phòng vật tư y tế: Duyệt các thông tin vật tư liên quan đến các ca mổ
cần được lên lịch, …
• Ngoài ra phần mềm có thể: Gửi các thông báo đến những con người liên quan đến ca mổ,
Vận hành tự động qui trình liên quan đến lên lịch và quản lý tiến trình diễn tiến của lịch, … III) Chú ý:
- Được quyền sử dụng các thư viện trên mạng để giải quyết các vấn đề về kỹ thuật như đồ họa,
cấu trúc dữ liệu, thu thập thông tin, các thông tin chung đều có thể tìm trên mạng. 11
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – Mã số 11 I) Tên đề tài: Tên đề tài
Quản lý chi tiêu hợp lý II) Mô tả yêu cầu:
• Ứng dụng xây dựng chương trình hỗ trợ người dùng trong việc quản lý chi tiêu hàng tháng
dựa trên các khoảng thu nhập và kế hoạch đã được đề ra trong tháng trước đó.
o Lưu trữ các khoản thu, chi phát sinh hàng ngày do người dùng liệt kê.
o Quản lý các mục chứa tiền khác nhau.
o Thống kê tình hình thu chi.
• Ứng dụng cũng hỗ trợ người dùng trong việc đề xuất mua các sản phẩm theo thứ tự ưu tiên
về chi phí họ đang có dựa trên các sản phẩm người sử dụng mong muốn được có.
• Ứng dụng đề xuất kế hoạch trong tháng tiếp theo cho người dùng và tạo sự tiện ích nhập liệu
cho người dùng một cách hợp lý nhất và đề xuất phù hợp cùng với sự thông báo cho người
dùng khi điều kiện thỏa mãn. 12
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – Mã số 12 I) Tên đề tài: Tên đề tài
Quản lý tủ thuốc gia đình II) Mô tả yêu cầu:
• Ứng dụng quản lý thông tin trong tủ thuốc tại gia đình
o Lưu trữ thông tin các loại thuốc hiện có trong tủ thuốc và các thành phần hướng dẫn
sử dụng với mục đích thông báo người dùng thời gian hết hạn cùng với gợi ý cho
người dùng các thành phần tác dụng của thuốc khi họ gặp phải vấn đề về bệnh thông thường hàng ngày. o Chức năng cơ bản:
▪ Nhập thuốc cùng với khối lượng và ngày hết hạn vào hệ thống,
▪ Cảnh báo người dùng khi thuốc hết hạn và tìm kiếm các thông tin của thuốc,
▪ Cho phép người tìm kiếm thuốc trong tủ thuốc hay tìm kiếm theo bệnh,
▪ Cho phép người dùng đọc các thông tin sử dụng thuốc,
▪ Hỗ trợ phần tin tức liên quan đến thuốc cho người dùng,
▪ Hỗ trợ phân loại thuốc, lưu trữ toa thuốc và nhắc nhở thuốc uống theo toa,
▪ Nâng cao: thu thập dữ liệu từ các website thuốc để cung cấp thông tin hướng dẫn cho người dùng. 13
MÔN HỌC LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – Mã số 13 I) Tên đề tài: Tên đề tài
Đề tài nhóm sinh viên tự đề xuất II) Mô tả yêu cầu:
• Sinh viên mô tả thông tin chi tiết về đề tài và gửi email cho thầy 14
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
──────── * ─────── BÀI TẬP LỚN
MÔN: LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG
Sinh viên thực hiện : <Tên sinh viên> Mã sinh viên : Lớp : XXXX – Khoá XXXX
Giáo viên hướng dẫn : ThS. Nguyễn Mạnh Tuấn cuu duong than cong . com
Hà Nội, tháng 11 năm 2019 CuuDuongThanCong.com
https://fb.com/tailieudientucntt
IT3100 – Lập trình hƣớng đối tƣợng 20192 MỤC LỤC
MỤC LỤC ...................................................................................................................... 2
LỜI NÓI ĐẦU ................................................................................................................ 3
PHÂN CÔNG THÀNH VIÊN TRONG NHÓM .......... Error! Bookmark not defined.
CHƢƠNG 1. KHẢO SÁT, ĐẶC TẢ YÊU CẦU BÀI TOÁN ................................ 5
1.1. Mô tả yêu cầu bài toán ..................................................................................... 5
1.2. Biểu đồ use case ................................................................................................ 5
1.2.1. Biểu đồ use case tổng quan ......................................................................... 5
1.2.2. Biểu đồ use case phân rã mức 2 .................................................................. 5
1.3. Đặc tả use case .................................................................................................. 5
CHƢƠNG 2. PHÂN TÍCH THIẾT KẾ BÀI TOÁN .............................................. 6
2.1. Thiết kế Cơ sở dữ liệu ...................................................................................... 6
2.2. Biểu đồ trình tự ................................................................................................ 6
2.3. Biểu đồ lớp ........................................................................................................ 6
2.4. Thiết kế chi tiết lớp .......................................................................................... 6
CHƢƠNG 3. CÔNG NGHỆ VÀ THUẬT TOÁN SỬ DỤNG ............................... 7
CHƢƠNG 4. XÂY DỰNG CHƢƠNG TRÌNH MINH HỌA ................................ 8
4.1. Kết quả chƣơng trình minh họa ..................................................................... 8
4.2. Giao diện chƣơng trình ................................................................................... 8
KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN ................................................................. 10 cuu duong than cong . com
TÀI LIỆU THAM KHẢO ........................................................................................... 11
PHỤ LỤC ..................................................................................................................... 12 Nhóm XX 2 CuuDuongThanCong.com
https://fb.com/tailieudientucntt
IT3100 – Lập trình hƣớng đối tƣợng 20192 LỜI NÓI ĐẦU cuu duong than cong . com Nhóm XX 3 CuuDuongThanCong.com
https://fb.com/tailieudientucntt
IT3100 – Lập trình hƣớng đối tƣợng 20192
PHÂN CÔNG THÀNH VIÊN TRONG NHÓM
lớn môn học và đánh giá mức độ hoàn thành> Họ và tên Email
Điện thoại Công việc thực hiện Đánh giá cuu duong than cong . com Nhóm XX 4 CuuDuongThanCong.com
https://fb.com/tailieudientucntt
IT3100 – Lập trình hƣớng đối tƣợng 20192
CHƢƠNG 1. KHẢO SÁT, ĐẶC TẢ YÊU CẦU BÀI TOÁN
những yêu cầu từ giáo viên sau những lần trao đổi, gặp mặt>
<Đặc tả yêu cầu bài toán bao gồm:
- Biểu đồ use case tổng quan
- Biểu đồ use case phân rã cho các chức năng phức tạp.
- Đặc tả use case cho những use case chính, nghiệp vụ quan trọng của bài toán>
1.1. Mô tả yêu cầu bài toán
1.2. Biểu đồ use case
1.2.1. Biểu đồ use case tổng quan
1.2.2. Biểu đồ use case phân rã mức 2
1.3. Đặc tả use case
<Đặc tả cho 2-4 use case chính, biểu thị cho những nghiệp vụ quan trọng của bài toán> đồ hoạt động> cuu duong than cong . com Nhóm XX 5 CuuDuongThanCong.com
https://fb.com/tailieudientucntt
IT3100 – Lập trình hƣớng đối tƣợng 20192
CHƢƠNG 2. PHÂN TÍCH THIẾT KẾ BÀI TOÁN
2.1. Thiết kế Cơ sở dữ liệu hoặc Cấu trúc tệp dữ liệu
2.2. Biểu đồ trình tự
quan trọng của bài toán>
2.3. Biểu đồ lớp
nhiều biểu đồ lớp một cách hợp lý để trình bày tốt hơn>
2.4. Thiết kế chi tiết lớp
trong nội dung bài tập lớn nhƣ thế nào> cuu duong than cong . com Nhóm XX 6 CuuDuongThanCong.com
https://fb.com/tailieudientucntt