1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo nhập môn công nghệ phần mềm ptit

36 3 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 36
Dung lượng 1,26 MB

Nội dung

Báo cáo Modul liên quan đến Nhà hàng Lotteria - Công nghệ phần mềm PTIT Đây là báo cáo cá nhân của mình nên sẽ còn một số sai sót, cũng như chưa được hoàn thiện Các bạn có thể tham khảo và phát triển thêm Mình cảm ơn!

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

KHOA CÔNG NGHỆ THÔNG TIN 1

Chuỗi nhà hàng đồ ăn nhanh Lotteria đặt hàng anh chị phát

triển một phần mềm giúp họ quản lí phân công và chấm công nhân

Trang 2

viên làm thêm theo giờ (parttime) với mô tả như sau:

● Chuỗi nhà hàng có nhiều nhà hàng Mỗi nhà hàng có nhiềunhân viên làm theo giờ Mỗi ngày làm việc có 2 ca, ca 1 từ8-16h, ca 2 từ 16-24h Mức tiền công theo giờ là giống

nhau cho tất cả nhân viên làm theo giờ

● Mỗi nhân viên, sau khi kí hợp đồng, được đăng kí những

buổi nào rảnh để có thể đến làm việc Số buổi có thể làm

việc trong mỗi tuần mà mỗi nhân viên đăng kí phải đạt

ngưỡng tối thiểu theo quy định Thông tin này có thể thay

đổi hàng tuần, trước khi lên lịch làm việc cho tuần tiếp

theo

● Quản lí sẽ dựa trên lịch đăng kí của từng nhân viên để lên

lịch cho tuần tiếp theo Đảm bảo mỗi ca có đủ N nhân viênlàm việc Nếu có ca nào đó mà số nhân viên đăng kí lớn

hơn N, thì ưu tiên những nhân viên đang có số giờ làm ít

hơn xếp trước Lịch tuần tiếp theo sẽ được thông báo cho

toàn bộ nhân viên để tiện chuẩn bị

● Khi đến làm việc, nhân viên quét thẻ checkin giờ vào làm,

khi về, nhân viên quét thẻ checkout để về

● Tiền lương nhân viên tính theo số giờ thực làm của nhân

viên và được trả theo tuần Ca nào nhân viên làm quá 8h

thì mức tiền công cho phần thời gian đội thêm được tính

thêm 20% ca nào nhân viên đến muộn hoặc về sớm thì

thời gian vắng mặt sẽ bị trừ tiền đội thêm 50%

Anh/chị hãy thực hiện modul "Tính công tuần này" với các

bước sau đây: QL chọn chức năng tính tiền công cho NV trong

tuần → Giao diện tính công hiện lên với ô nhập khoảng thời gian

tính công → QL nhập ngày bắt đầu, ngày kết thúc của tuần vừa rồi

→ Giao diện hiện lên danh sách bảng tiền công cho tất cả các NV

trong tuần đó, mỗi NV trên 1 dòng, xếp theo thứ tự tên: mã, tên, số

đt, tổng số giờ làm trong ca, tổng tiền trong ca, tổng số giờ thừa ca,tổng tiền thừa ca, tổng số giờ đi chậm về sớm, tổng số tiền bị phạt,tổng tiền thực nhận cuối cùng → QL click chọn vào 1 dòng để xemchi tiết → Giao diện hiện lên bảng thống kê chi tiết giờ làm của

NV được chọn trong tuần đó, mỗi dòng tương ứng 1 ca làm việc,

xếp theo thứ tự thời gian: thứ, ngày, ca, giờ checkin, giờ checkout,

số giờ trong ca, số tiền trong ca, số giờ thừa ca, số tiền thừa ca, số

giờ đi chậm về sớm, số tiền bị phạt, tổng tiền thực nhận của ca

1 Danh sách các từ chuyên dụng trong lĩnh vực ứng dụng ( glossary) 3

Trang 3

2 Mô tả hệ thống chi tiết bằng ngôn ngữ tự nhiên 5

2.2 Những người được phép sử dụng phần mềm và được làm các chức năng 6 2.3 Thông tin đối tượng cần xử lý 6 2.4 Quan hệ giữa các đối tượng 6 2.5 Mô tả chi tiết hoạt động 6 2.7 Chi tiết modul “ Tính công tuần này “ 8

1 Trích các lớp thực thể cho toàn hệ thống 9

3.2 Thẻ CRC cho lớp điều khiển 13

5 Scenario với các lớp được trích 14

6 Sequence chart của modul 17

1 Sơ đồ thực thể toàn hệ thống 17

2 Thiết kế cơ sở dữ liệu 18

3 Thiết kế mô hình MVC với thực thể thuần 19

4 Sơ đồ tuần tự pha thiết kế 22

1 Lập kế hoạch test cho modul 23

I Tài liệu pha đặc tả

1 Danh sách các từ chuyên dụng trong lĩnh vực ứng dụng ( glossary)

Trang 4

STT Tên Tiếng

Việt

Tên TiếngAnh

Giải thích

thống, có quyềntính công và sắpxếp ca làm chonhân viên

Calculation

Quá trình ghinhận và tính toán

số giờ công củanhân viên

công

PayrollCalculation

Quá trình ghinhận và tính toán

số tiền công củanhân viên dựatrên số giờ công

công Payroll Table Danh sách hiểnthị thông tin về

tiền công củanhân viên

kê StatisticsTabel Bảng hiển thịthông tin chi tiết

về dữ liệu

mỗi nhân viênphải làm việc( cốđịnh )

heck-out Check-in/Check-out Thời điểm nhânviên bắt đầu và

kết thúc côngviệc

Trang 5

2 Mô tả hệ thống chi tiết bằng ngôn ngữ tự nhiên2.1 Phạm vi phần mềm

- Hỗ trợ quản lý tiền công, chia ca làm cho các nhân viên.

STT Tên Tiếng

Việt

Tên TiếngAnh

Giải thích

thống, có quyềntính công và sắpxếp ca làm chonhân viên

Calculation

Quá trình ghinhận và tính toán

số giờ công củanhân viên

công

PayrollCalculation

Quá trình ghinhận và tính toán

số tiền công củanhân viên dựatrên số giờ công

thừa/thiếuca

Excess/DeficitHours Số giờ mà mỗinhân viên làm

việc thêm hoặcthiếu

9 Số tiền bị

phạt

PenaltyAmount

Số tiền mà nhânviên phải trả khi

vi phạm quyđịnh

10 Tổng tiền

lương nhận

Total Salary Số tiền mà nhân

viên sẽ nhậnđược

cửa hàng

Trang 6

- Hỗ trợ nhân viên đăng ký ca và checkin/checkout.

- Chỉ có nhân viên của cửa hàng Lotteria mới được sử dụng

phần mềm ( quản lý và nhân viên)

2.2 Những người được phép sử dụng phần mềm và được làm các chức năng

- Quản lý:

+ Quản lý nhân viên

+ Lên lịch làm việc cho nhân viên

+ Tính tiền công cho nhân viên

+ Thống kê nhân viên

+ Tham gia vào Checkin/Checkout của nhân viên

- Nhân viên:

+ Đăng kí ca làm

+ Checkin/Checkout

2.3 Thông tin đối tượng cần xử lý

- Quản lý: Mã quản lý, thông tin

- Nhân viên: thông tin, ca làm việc, lương,Checkin/Checkout,

- Ca làm: 2 ca

- Lịch làm việc tuần tới: gồm nhiều ca làm

2.4 Quan hệ giữa các đối tượng

- Quản lý: Quản lý các nhân viên.

- Nhân viên đăng ký các ca làm.

- Quản lý lên lịch làm việc cho nhân viên.

2.5 Mô tả chi tiết hoạt động

- Nhân viên muốn chọn ca làm: Đăng nhập vào hệ thống ->Chọn chức năng đăng ký ca làm -> Danh sách ca làm trongtuần -> Chọn ca làm mong muốn -> Đăng ký -> Hệ thống lưuthông tin

Trang 7

- Nhân viên muốn checkin/checkout: QL trực tiếp cập nhậttrên máy tính: QL chọn chức năng checkin (hoặc checkout)

→ Giao diện nhập mã NV hiện lên → QL nhập mã NV vàclick submit → Hệ thống lưu và báo thời điểm checkin

(checkout) của NV là thời điểm hiện tại

- Quản lý muốn lên lịch làm việc tuần tới: QL chọn chức nănglên lịch làm việc tuần tới cho nhân viên 1 nhà hàng → Giaodiện lên lịch hiện lên gồm một bảng có 7 dòng tương ứng 7ngày của tuần tới, mỗi dòng có 2 cột tương ứng 2 ca củangày Mỗi cột chứa tên các NV đã chọn cho ca đó → QLclick chọn vào 1 ca → Giao diện hiện lên danh sách các NV

đã đăng kí làm việc cho ca đó và chưa được xếp làm cho ca

đó, mỗi NV trên 1 dòng: tên, số điện thoại, tổng giờ đã lênlịch cho tuần tới, sắp xếp theo chiều tăng dần của tổng giờ đãlên lịch cho tuần tới → QL click chọn một số NV và clicknút chọn → Giao diện quay về trang lên lịch với thông tincác NV được chọn được thêm vào cột của ca tương ứng →

QL lặp lại các bước chọn trên cho đến hết số ca của tuần tới

và click lưu → Hệ thống lưu lại và thông báo thành công,đồng thời in lịch ra để QL phát cho từng NV

2.6 Sơ đồ use-case của toàn bộ hệ thống

Trang 8

2.7 Chi tiết modul “ Tính công tuần này “

a Modul “Tính công tuần này”

b Chi tiết use-case

- Đăng nhập: Use-case cho phép quản lý đăng nhập vào hệthống

- Đăng xuất: Use-case cho phép quản lý đăng xuất khỏi hệthống

- Tính công tuần này: Use-case cho phép quản lý tính công

- Tìm kiếm khoảng thời gian: Use-case cho phép quản lý tìmkiếm khoảng thời gian chấm công với việc nhập ngày bắt đầu

- Xem chi tiết nhân viên: Chi tiết của nhân viên bao gồm thứ,ngày, ca, giờ checkin, giờ checkout, số giờ trong ca, số tiềntrong ca, số giờ thừa ca, số tiền thừa ca, số giờ đi chậm vềsớm, số tiền bị phạt, tổng tiền thực nhận của ca

Trang 9

II Tài liệu pha phân tích

● Nhân viên: Lớp thực thể: NhanVien02(id) - kế thừa từEmployee

● Lịch làm việc tuần tới: Lớp thực thể:

LichLamViec02(id,nv,ngaybatdau,ngayketthuc) – Lịchlàm việc của nhân viên trong tuần tiếp theo do quản lýlên lịch

● Tiền công: Lớp thực thể:

TienCong02(id,tongsogiolamtrongca,tongtientrongca,tongsogiotangca,tongtientangca,tongsogiodimuonvesom,tongtiendimuonvesom,tongtiennhan) – Tiền công nhânviên trong tuần làm việc

● Checkin: Lớp thực thể: Checkin(giobatdau) - Giờ nhânviên bắt đầu làm việc

● Checkout: Lớp thực thể: Checkout(gioketthuc) - Giờnhân viên kết thúc ca làm

● Lịch đăng ký: Lớp thực thể:

LichDangKy02(id,nv,ql)-lịch do nhân viên đăng ký vớiquản lý

● Giờ làm nhân viên: Lớp thực thể: GioLamNhanVien02

- Chi tiết các giờ làm, thời gian checkin, checkout củanhân viên trong 1 ca làm việc

● Các danh từ trừu tượng không nằm trong hệ thống:Hợp đồng, buổi rảnh

- Quan hệ giữa các lớp thực thể:

● Một nhà hàng có nhiều nhân viên, một nhân viên chỉ

Trang 10

thuộc vào một nhà hàng.

● Một quản lý có thể lên nhiều lịch làm việc tuần tới

● Một ca có thể có nhiều nhân viên, một nhân viên có thểlàm nhiều ca -> đề xuất thêm một lớp NhanVienCa(id,NhanVien, Ca)

● Nhân viên chỉ có thể checkin và checkout 1 lần trong

cùng 1 ca,một lượt checkin và checkout chỉ thuộc và

một NhanVienCa duy nhất

● Mỗi một nhân viên thì sẽ có nhiều tiền công, mỗi một

tiền công chỉ thuộc vào một nhân viên

● Tiền công sẽ được tính dựa trên một mảng Giờ làm

nhân viên -> Thêm một lớp BangCongNhanVien02 đểquản lý về mặt giao diện

2 Scenario của modul

Use case Tính công tuần này

Tiền điều kiện Quản lý đăng nhập thành công, khi đến ngày

chấm công cho các nhân viên ( cuối tuần).Hậu điều kiện Quản lý xem lại tiền công cho nhân viên và xác

nhận tiền công cho nhân viên

Trang 11

Kịch bản

chính

1 Sau khi quản lý A đăng nhập thành công,chọn chức năng “Tính công tuần này”.Quản lý A muốn tính công cho nhân viêntrong tuần

2 Giao diện hiện lên với 2 ô nhập là ngàybắt đầu và ngày kết thúc và 2 nút “ Tìmkiếm” và “Quay lại”

3 Quản lý A nhập ngày bắt đầu và ngày kếtthúc trong tuần, sau đó bấm “Tìm kiếm”

4 Giao diện hiện lên danh sách bảngtiền công cho tất cả các NV trongtuần đó, mỗi NV trên 1 dòng, xếptheo thứ tự tên: mã, tên, số đt, tổng

số giờ làm trong ca, tổng tiền trong

ca, tổng số giờ thừa ca, tổng tiềnthừa ca, tổng số giờ đi chậm về sớm,tổng số tiền bị phạt, tổng tiền thựcnhận cuối cùng

5 Nhân viên quản lý A chọn 1 dòngbất kỳ để xem chi tiết ca làm củanhân viên đó

6 Giao diện hiện lên bảng thống kê chitiết giờ làm của NV được chọn trongtuần đó, mỗi dòng tương ứng 1 calàm việc, xếp theo thứ tự thời gian:

thứ, ngày, ca, giờ checkin, giờcheckout, số giờ trong ca, số tiềntrong ca, số giờ thừa ca, số tiền thừa

ca, số giờ đi chậm về sớm, số tiền bịphạt, tổng tiền thực nhận của ca và 2nút “Xác nhận”,” Quay lại”

7 Quản lý A xem lại các thông tin và chỉnhsửa nếu có và bấm nút “ Xác nhận”

8 Giao diện hiện lên “ Chấm côngnhân viên thành công”

9 Hệ thống quay về giao diện trongbước 4

10 Sau khi hoàn thành chấm côngcho các nhân viên, nhân viên quản

lý A click vào nút “ Quay lại “

11 Hệ thống trở về trang chủ củangười lý

Trang 12

Ngoại lệ 3.1 Nhập ngày bắt đầu lớn hơn ngày kết thúc.

3.1.1 Hệ thống yêu cầu người dùng nhập lạingày

3 Sơ đồ lớp của modul

- Lớp điều khiển: ChamChongCtr02

Sơ đồ lớp cho modul “ Tính công tuần này “:

Trang 13

3.2 Thẻ CRC cho lớp điều khiển

Trang 14

4 State chart của modul

5 Scenario với các lớp được trích

Use case Tính công tuần này

3 Quản lý A nhập ngày bắt đầu và ngày kếtthúc trong tuần, sau đó bấm “Tìm kiếm”

4 Lớp TimKiemNgayFrm02 gửi yêu cầu

Trang 15

lấy Danh sách tiền công nhân viên trongkhoảng thời gian đó tới lớp

ChamCongCtr02

5 Lớp ChamCongCtr02 lấy danh sách tiềncông trong CSDL

6 Lớp ChamCongCtr02 chọn ra danh sáchtiền công trong khoảng thời gian đã

nhập

7 Lớp ChamCongCtr02 gọi lớp TienCong02

để đóng gói thông tin thành danh sách cácđối tượng kiểu TienCong02

8 Lớp TienCong02 đóng gói thông tin và trảlại danh sách các đối tượng kiểu

TienCong02 cho lớp ChamCongCtr02

9 Lớp ChamCongCtr02 chuyển đối tượngTienCong02 cho lớp

DanhSachCongNhanVienFrm02 để hiển thị

10 Lớp DanhSachCongNhanVienFrm02 hiệnlên danh sách bảng tiền công cho tất cả các

NV trong tuần đó, mỗi NV trên 1 dòng, xếptheo thứ tự tên: mã, tên, số đt, tổng số giờlàm trong ca, tổng tiền trong ca, tổng số giờthừa ca, tổng tiền thừa ca, tổng số giờ đichậm về sớm, tổng số tiền bị phạt, tổng tiềnthực nhận cuối cùng

11 Quản lý A click chọn vào một dòng

của nhân viên trên danh sách

12 Lớp DanhSachCongNhanVienFrm02gọi và truyền đối tượng vừa được chọn

cho lớp ChiTietCongNhanVienFrm02

13 Lớp ChiTietCongNhanVienFrm02

hiện ra bảng thống kê chi tiết giờ làm

của NV được chọn trong tuần đó, mỗi

dòng tương ứng 1 ca làm việc, xếp theothứ tự thời gian: thứ, ngày, ca, giờ

checkin, giờ checkout, số giờ trong ca,

số tiền trong ca, số giờ thừa ca, số tiền

thừa ca, số giờ đi chậm về sớm, số tiền

bị phạt, tổng tiền thực nhận của ca

14 Quản lý A xem lại các thông tin và

bấm “Xác nhận”

15 Lớp ChiTietCongNhanVienFrm02

Trang 16

gửi thông tin trên form đến lớpBangCongNhanVien02 để đóng gói đốitượng BangCongNhanVien02.

16 Lớp BangCongNhanVien02 đóng góithông tin thành một đối tượng

BangCongNhanVien02

17 Lớp ChiTietCongNhanVienFrm02truyền đối tượng BangCongNhanVien02cho lớp ChamCongCtr02

18 Lớp ChamCongCtr02 cập nhật thôngtin vào CSDL

19 Lớp ChamCongCtr02 thông báo cholớp ChiTietCongNhanVienFrm02 đã cậpnhật thành công

20 Lớp ChiTietCongNhanVienFrm02thông báo đã cập nhật thành công choquản lý A

Ngoại lệ 3.1 Nhập ngày bắt đầu lớn hơn ngày kết thúc

3.1.1 Hệ thống yêu cầu người dùng nhập lại ngày

Trang 17

6 Sequence chart của modul

III Pha thiết kế

1 Sơ đồ thực thể toàn hệ thống

Trang 18

2 Thiết kế cơ sở dữ liệu

- Mỗi lớp thực thể đề xuất thành 1 bảng tương ứng trong

- Mô tả quan hệ giữa các lớp sang quan hệ giữa các bảng:

● Lớp NhanVien02 và lớp Employee02 có quan hệ

● Lớp QuanLy02 và lớp LichLamViec02 có quan

hệ kết hợp -> bảng tblQuanLy02 vàtblLichLamViec02 có quan hệ 1-n

● Lớp NhanVien02 và lớp NhanVienCa02 có quan

hệ kết hợp -> bảng tblNhanVien02 vàtblNhanVienCa02 có quan hệ 1-n

● Lớp Ca02 và lớp NhanVienCa02 có quan hệ kếthợp -> bảng tblCa02 và tblNhanVienCa02 cóquan hệ 1-n

Trang 19

Hình ảnh thiết kế CSDL

3 Thiết kế mô hình MVC với thực thể thuần

- Dùng thẻ CRC và 3 nguyên lí thiết kế phương thức đểgán phương thức cho lớp

Trang 21

- Định nghĩa khuôn mẫu cho từng phương thức:

● Với TimKiemNgayFrm02 phải có các phương thức:hiển thị Form, xử lý sự kiện nút “Tìm kiếm”

● Với DanhSachCongNhanVienFrm02 phải có các

phương thức: hiển thị Form danh sách tiền công củanhân viên, xử lý sự kiện khi click vào 1 dòng của nhânviên

● Với ChamCongDAO02 phải có các phương thức lưuthông tin vào CSDL, lấy danh sách tiền công của nhânviên và bảng tiền công chi tiết của nhân viên

Trang 22

- Sơ đồ lớp chi tiết

4 Sơ đồ tuần tự pha thiết kế.

Trang 23

IV Pha kiểm thử

1 Lập kế hoạch test cho modul

Tính công tuần này cho nhân

Bảng tblTienCong02:

tongtientr

ongca

tongsogiothua

tongsotienthuaca

tongsogiodichamvesom

tongsotienphat

tongtiennhan

Trang 24

ID id thu ngay giobatdau gioketthuc

sogiotrongca

Trang 25

Tính công tuần này

Giao diện hiện ra Form tìmkiếm ngày và nút Tìm kiếm

2 Quản lý nhập ngày trong

tuần và bấm nút tìmkiếm

Giao diện hiện lên với danhsách tiền công nhân viên nhưsau

chỉ

Tổng giờlàm trongca

1 NV01 Nguyễn Văn A 09699xxxxx Hà

Nội

36

Trang 26

Tổngtiền thừa

Tổng giờphạt

Tổngtiền phạt

Tổngtiền nhận

3 Quản lý click vào nhân

viên Nguyễn Văn A

Giao diện hiện lên với chi tiếttiền công của nhân viên

Nguyễn Văn A như sau:

ca Checkin Checkout Số giờtrong

ca

Số tiềntrongca

Số giờ phạt Tổng tiền

phạt

Tổng tiềnnhận

Trang 27

V Cài đặt

- Lớp Ca02

Trang 28

Lớp NhanVien02:

Trang 29

Lớp NhanVienCa02:

Trang 32

Lớp TienCong02:

Trang 34

DanhSachCongNhanVienFrm02:

Trang 35

ChamCongDAO02:

Ngày đăng: 15/05/2024, 11:06

HÌNH ẢNH LIÊN QUAN

2.6. Sơ đồ use-case của toàn bộ hệ thống - Báo cáo nhập môn công nghệ phần mềm ptit
2.6. Sơ đồ use-case của toàn bộ hệ thống (Trang 7)
3. Sơ đồ lớp của modul - Báo cáo nhập môn công nghệ phần mềm ptit
3. Sơ đồ lớp của modul (Trang 12)
1. Sơ đồ thực thể toàn hệ thống - Báo cáo nhập môn công nghệ phần mềm ptit
1. Sơ đồ thực thể toàn hệ thống (Trang 17)
Hình ảnh thiết kế CSDL - Báo cáo nhập môn công nghệ phần mềm ptit
nh ảnh thiết kế CSDL (Trang 19)
4. Sơ đồ tuần tự pha thiết kế. - Báo cáo nhập môn công nghệ phần mềm ptit
4. Sơ đồ tuần tự pha thiết kế (Trang 22)
Bảng tblNhanVien02: - Báo cáo nhập môn công nghệ phần mềm ptit
Bảng tbl NhanVien02: (Trang 23)
Bảng tblNhanVienCa02 - Báo cáo nhập môn công nghệ phần mềm ptit
Bảng tbl NhanVienCa02 (Trang 24)

TỪ KHÓA LIÊN QUAN

w