Phõn tớch cỏc lớp

Một phần của tài liệu Vận dụng công nghệ hướng đối tượng sử dụng mẫu thiết kế để phát triển ứng dụng Tổ chức và quản lý hoạt động giao công việc (Trang 89)

4. Túm tắt cấu trỳc của luận văn

2.3.2. Phõn tớch cỏc lớp

2.3.2.1. Lớp biờn

Cỏc lớp giao diện đều cú nhiệm vụ:

– Hiển thị cỏc thụng tin yờu cầu ngƣời dựng thực hiện

– Tiếp nhận cỏc yờu cầu ngƣời dựng

– Chuyển yờu cầu đến lớp điều khiển.

Cỏc lớp giao diện của hệ thống:

 Lớp FrmTT_CongViec  Lớp FrmTaoCongViecMoi  Lớp FrmGiaiQuyetCV:

Ba lớp giao diện trờn cú thể gộp chung lại với nhau thành lớp FrmTT_CongViec

để cập nhật tạo cụng việc mới, hiển thị thụng tin cụng việc, bao gồm cỏc thuộc tớnh: tờn cụng việc, nội dung, ngày tạo, hạn giải quyết, độ khẩn,...

 Lớp FrmTT_PhongBan  Lớp FrmCN_PhongBan:

Hai lớp giao diện trờn cú thể gộp chung lại với nhau thành lớp

FrmTT_PhongBan để cập nhật, hiển thị thụng tin chi tiết của phũng ban bao gồm cỏc thuộc tớnh nhƣ: tờn phũng ban, mó phũng ban, số thự tự sắp xếp.

 Lớp FrmTT_NhanVien  Lớp FrmCN_NhanVien:

Hai lớp giao diện trờn cú thể gộp chung lại với nhau thành lớp

FrmTT_NhanVien để cập nhật, hiển thị thụng tin chi tiết của nhõn viờn bao gồm cỏc thuộc tớnh nhƣ: tờn nhõn viờn, tờn viết tắt, địa chỉ, số điện thoại, phũng ban, số thứ tự hiển thị, chức vụ.

 Lớp FrmTT_LoaiCongViec  Lớp FrmCN_LoaiCongViec:

Hai lớp giao diện trờn cú thể gộp chung lại với nhau thành lớp

FrmTT_LoaiCongViec để cập nhật, hiển thị thụng tin chi tiết loại cụng việc bao gồm cỏc thuộc tớnh nhƣ: tờn loại cụng việc, mó loại cụng việc.

 Lớp FrmCN_NhomQuyen:

Hai lớp giao diện trờn cú thể gộp chung lại với nhau thành lớp

FrmTT_NhomQuyen để cập nhật, hiển thị thụng tin chi tiết nhúm quyền bao gồm cỏc thuộc tớnh nhƣ: tờn nhúm quyền, mó nhúm quyền.

 Lớp FrmThamSo_VeBD: hiển thị và cho phộp nhập cỏc tham số vẽ biểu đồ, truy vấn số liệu theo cỏc tham số đƣa vào.

 Lớp Frm_HienThiBD: Vẽ biểu đồ dựa trờn số liệu của FrmThamSo_VeBD.  Lớp FrmPhanViec: Hiển thị thụng tin phõn việc và cập nhật lại thụng tin phõn

cụng giải quyết cụng việc.

 Lớp FrmChiDaoCV: Hiển thị nội dung cỏc lần chỉ đạo giải quyết cụng việc và cập nhật nội dung chỉ đạo giải quyết cụng việc.

 LớpFrmDS_CongViec: hiển thị danh sỏch cụng việc của ngƣời dựng đang đăng

nhập vào hệ thống, bao gồm: tờn cụng việc, nội dung, cỏc lần chỉ đạo, cỏc lần giải quyết, cỏc cụng việc con,...

 Lớp FrmGiaiQuyetCV: hiển thị giao diện cập nhật nội dung giải quyết cụng việc, bao gồm cỏc thuộc tớnh: ngƣời giải quyết, ngày giải quyết, tiến độ thực hiện, nội dung giải quyết.

 LớpFrmDS_PhongBan: hiển thị danh sỏch phũng ban, bao gồm tờn phũng ban,

mó phũng ban, số thứ tự.

 Lớp FrmDS_NhanVien: hiển thị danh sỏch nhõn viờn, bao gồm tờn nhõn viờn, tờn viết tắt, địa chỉ, số điện thoại, phũng ban, số thứ tự hiển thị, chức vụ.

 LớpFrmDS_LoaiCongViec: hiển thị danh sỏch loại cụng việc, bao gồm tờn loại

cụng việc, mó loại cụng việc.

 Lớp FrmDS_NhomQuyen: hiển thị danh sỏch nhúm quyền, bao gồm tờn nhúm quyền, mó nhúm quyền.

 LớpFrmDoiMatKhau: hiển thị giao diện đổi mật khẩu, bao gồm cỏc thuộc tớnh: tờn truy nhập, mật khẩu cũ, mật khẩu mới.

 LớpFrmGiaoDienChinh: hiển thị danh mục thực đơn cỏc chức năng.  LớpFrmDangNhap: bao gồm cỏc thuộc tớnh: tờn truy nhập, mật khẩu.

 Lớp FrmDS_ChucNang: hiển thị danh sỏch cỏc chức năng thao tỏc với phần mềm, bao gồm cỏc thuộc tớnh: tờn chức năng, mó chức năng.

 Lớp FrmCN_PhanQuyen: hiển thị giao diện phõn quyền ngƣời dựng, bao gồm cỏc thuộc tớnh: tờn truy nhập, tờn nhúm quyền.

 Lớp FrmBC_ThongKe: bao gồm cỏc thuộc tớnh nhƣ: danh sỏch loại cụng việc, sỏch sỏch phũng ban, danh sỏch nhõn viờn, từ ngày, đến ngày, độ khẩn, trạng thỏi, ...

 Lớp FrmHienThi_BC: bao gồm cỏc thuộc tớnh: loại cụng việc, tờn cụng việc, nội dung cụng việc, nội dung chỉ đạo, nội dung giải quyết, ngày giao, ngày kết thỳc, hạn giải quyết, độ khẩn, tiến độ thực hiện, ...

 Lớp FrmTraCuu_CV: bao gồm cỏc thuộc tớnh: từ ngày, đến ngày, độ khẩn, danh sỏch loại cụng việc, danh sỏch phũng ban, danh sỏch chuyờn viờn, tờn cụng việc.  Lớp FrmKetQua_TraCuu: bao gồm cỏc thuộc tớnh: loại cụng việc, tờn cụng

việc, nội dung cụng việc, ngày giao, ngày kết thỳc, hạn giải quyết, độ khẩn, tiến độ thực hiện, ...

2.3.2.2. Lớp điều khiển

 Lớp DK_DangNhap cú nhiệm vụ:

– Kiểm tra định danh, mật khẩu ngƣời dựng trờn mạng LAN.

– Lấy thụng tin ngƣời dựng.

– Đổi mật khẩu ngƣời dựng.

– Cập nhật thụng tin ngƣời dựng.

– Lấy quyền và cỏc chức năng cho phộp của ngƣời dựng  Lớp DK_CongViec cú nhiệm vụ:

– Lấy danh sỏch cụng việc

– Tạo mới cụng việc

– Xoỏ cụng việc

– Sửa thụng tin cụng việc

– Đặt lại trạng thỏi cụng việc

– Lấy thụng tin chi tiết của một cụng việc

– Lấy danh sỏch phũng ban giải quyết cụng việc

– Lấy danh sỏch chức danh quản lý cụng việc

– Lấy thụng tin giải quyết cụng việc

– Cập nhật thụng tin giải quyết cụng việc

– Lấy thụng tin chỉ đạo cụng việc

– Cập nhật thụng tin chỉ đạo cụng việc  Lớp DK_CN_PhongBan cú nhiệm vụ:

– Lấy danh sỏch phũng ban

– Lấy thụng tin chi tiết của một phũng ban

– Sửa thụng tin phũng ban

– Xoỏ phũng ban

– Tạo phũng ban mới

– Cập nhật quan hệ phũng ban

– Lấy danh sỏch quan hệ phũng ban  Lớp DK_CN_NhanVien cú nhiệm vụ:

– Lấy danh sỏch nhõn viờn

– Lấy thụng tin chi tiết của một nhõn viờn

– Sửa thụng tin nhõn viờn

– Xoỏ nhõn viờn

– Tạo nhõn viờn mới

– Cập nhật quan hệ nhõn viờn

– Lấy danh sỏch quan hệ nhõn viờn

 Lớp DK_CN_LoaiCongViec cú nhiệm vụ:

– Lấy danh sỏch loại cụng việc

– Lấy thụng tin chi tiết của một loại cụng việc

– Sửa thụng tin loại cụng việc

– Xoỏ loại cụng việc

– Tạo loại cụng việc mới

– Cập nhật thụng tin loại cụng việc  Lớp DK_CN_PhanQuyen cú nhiệm vụ:

– Lấy danh sỏch nhúm quyền

– Sửa thụng tin nhúm quyền

– Xoỏ nhúm quyền

– Tạo nhúm quyền mới

– Thờm quyền cho ngƣời dựng

– Xoỏ quyền của ngƣời dựng

– Lấy danh sỏch cỏc quyền của ngƣời dựng  Lớp DK_BaoCao_TK cú nhiệm vụ:

– Lấy danh mục loại cụng việc

– Lấy thụng tin về phũng ban giải quyết cụng việc

– Lấy thụng tin về nhõn viờn giải quyết cụng việc

– Lấy danh sỏch nội dung cỏc lần giải quyết cụng việc.

– Lấy danh sỏch nội dung cỏc lần chỉ đạo của cụng việc.

– Lấy danh sỏch cụng việc theo điều kiện ngƣời dựng đƣa vào.

– Hiển thị danh sỏch cụng việc và cỏc thụng tin liờn quan lờn bỏo cỏo.

– In ấn và kết xuất bỏo cỏo ra cỏc định dạng khỏc: word, excell,...  Lớp DK_TraCuu

– Lấy danh mục loại cụng việc

– Lấy thụng tin về phũng ban giải quyết cụng việc

– Lấy thụng tin về nhõn viờn giải quyết cụng việc

– Lấy danh sỏch nội dung cỏc lần giải quyết cụng việc.

– Lấy danh sỏch nội dung cỏc lần chỉ đạo của cụng việc.

– Tỡm kiếm cụng việc theo điều kiện ngƣời dựng đƣa vào.

– Hiển thị danh sỏch cụng việc tỡm thấy.  Lớp DK_VeBieuDo cú nhiệm vụ:

– Lấy danh sỏch cụng việc

– Lấy danh sỏch phũng ban

– Lấy danh sỏch nhõn viờn

– Lấy danh sỏch nội dung giải quyết

– Lấy danh sỏch chỉ đạo giải quyết

– Lấy danh sỏch phũng ban giải quyết cụng việc

– Lấy danh sỏch nhõn viờn giải quyết cụng việc

2.3.2.3. Lớp thực thể

 Lớp CongViec

– Lƣu trữ thụng tin về cụng việc

– Tạo ra một hồ sơ cụng việc mới

– Ghi lại dữ liệu thay đổi về cụng việc

– Xoỏ một hồ sơ cụng việc

– Đƣa ra cỏc thụng tin theo yờu cầu của lớp điều khiển.

Cỏc thuộc tớnh: tờn cụng việc, nội dung, ngày tạo, ngƣời tạo, ngày giao, ngƣời

giao, độ khẩn, hạn giải quyết, trạng thỏi, khối lƣợng, ngày kết thỳc cụng việc.  Lớp NhanVien

– Lƣu trữ thụng tin về nhõn viờn

– Tạo ra một hồ sơ nhõn viờn mới

– Ghi lại dữ liệu thay đổi về nhõn viờn

– Xoỏ một hồ sơ nhõn viờn

– Đƣa ra cỏc thụng tin theo yờu cầu của lớp điều khiển.

Cỏc thuộc tớnh: mó nhõn viờn, tờn nhõn viờn, phũng ban, số thứ tự hiển thị, địa

chỉ, mật khẩu.

 Lớp QuanLyCongViec

– Lƣu trữ thụng tin phối hợp quản lý cụng việc

– Tạo ra một hồ sơ phối hợp quản lý cụng việc mới

– Ghi lại dữ liệu thay đổi về quản lý cụng việc

– Xoỏ một hồ sơ quản lý cụng việc

– Đƣa ra cỏc thụng tin theo yờu cầu của lớp điều khiển.

Cỏc thuộc tớnh: ngƣời quản lý, chức danh quản lý, tờn cụng việc, trạng thỏi.

 Lớp ChiDao

– Lƣu trữ thụng tin chỉ đạo giải quyết cụng việc của cấp trờn

– Tạo ra một nội dung chỉ đạo mới

– Ghi lại thay đổi về nội dung chỉ đạo

– Xoỏ một nội dung chỉ đạo đó cú

– Đƣa ra cỏc thụng tin theo yờu cầu của lớp điều khiển.

 Lớp LoaiCongViec

– Lƣu trữ thụng tin loại cụng việc

– Tạo ra một loại cụng việc mới

– Ghi lại dữ liệu thay đổi về loại cụng việc

– Xoỏ một loại cụng việc đó cú

– Đƣa ra cỏc thụng tin theo yờu cầu của lớp điều khiển.

Cỏc thuộc tớnh: tờn loại cụng việc, mó loại cụng việc

 Lớp GiaiQuyet

– Lƣu trữ thụng tin giải quyết cụng việc

– Tạo ra một nội dung giải quyết cụng việc mới

– Ghi lại dữ liệu thay đổi về nội dung giải quyết cụng việc

– Xoỏ một nội dung giải quyết cụng việc đó cú

– Đƣa ra cỏc thụng tin theo yờu cầu của lớp điều khiển.

Cỏc thuộc tớnh: nội dung giải quyết, ngƣời giải quyết, tờn cụng việc giải quyết,

ngày giải quyết,...

 Lớp NhomQuyen

– Lƣu trữ thụng tin nhúm quyền

– Tạo ra một nhúm quyền mới

– Ghi lại dữ liệu thay đổi về nhúm quyền

– Xoỏ một nhúm quyền đó cú

– Đƣa ra cỏc thụng tin theo yờu cầu của lớp điều khiển.

Cỏc thuộc tớnh: tờn nhúm quyền, mó nhúm quyền.

 Lớp PhongBan

– Lƣu trữ thụng tin về phũng ban

– Tạo ra một phũng ban mới

– Ghi lại dữ liệu thay đổi về phũng ban

– Xoỏ một phũng ban đó cú

– Đƣa ra cỏc thụng tin theo yờu cầu của lớp điều khiển.

Cỏc thuộc tớnh: tờn phũng, mó phũng, địa chỉ, số điện thoại, số thứ tự hiển thị.

 Lớp ChucDanhQuanLy

– Tạo ra một chức danh quản lý mới

– Ghi lại dữ liệu thay đổi về chức danh quản lý cụng việc

– Xoỏ một chức danh quản lý đó cú

– Đƣa ra cỏc thụng tin theo yờu cầu của lớp điều khiển.

Cỏc thuộc tớnh: tờn chức danh, mó chức danh, địa chỉ, số điện thoại, số thứ tự

hiển thị.

2.4. Thiết kế hệ thống

Trong phần này, chỳng ta sẽ tổ chức thiết kế xõy dựng hệ thống trờn một mụi trƣờng triển khai cụ thể. Dựa vào cỏc mụ hỡnh thu đƣợc từ pha phõn tớch, chỳng ta tiếp tục làm mịn cỏc ca sử dụng đến cấp độ cỏc lớp thiết kế. Cụ thể, chỳng ta sẽ xỏc định kiến trỳc vật lý của ứng dụng, tổ chức cỏc gúi thiết kế, thiết kế từng ca sử dụng và thiết kế tổng thể. Áp dụng mẫu thiết kế vào một số ca sử dụng.

2.4.1. Kiến trỳc vật lý của ứng dụng Má y dịch vụ web <<device>> Má y dịch vụ dữ liệu <<d evic e>> Ngư ời quả n trị <<d evic e>> Xử lý chứng thực ngư ời dù ng <<utility>> HTTP HTTP SSL Nhân viê n 1 <<d evic e>> Nhân viê n n <<d evic e>> HTTP HTTP Giá m đốc <<d evic e>> Thư ký giá m đốc <<d evic e>> Lã nh đạ o phòng <<d evic e>> HTTP HTTP HTTP Hỡnh 2.41: Kiến trỳc vật lý của ứng dụng 2.4.2. Xỏc định cỏc gúi thiết kế

Dựa vào chức năng và mục đớch sử dụng ta phõn chia hệ thống gồm 5 gúi sau:

1. Gúi ca sử dụng Đăng nhập hệ thống

2. Gúi ca sử dụng Quản lý giải quyết cụng việc 3. Gúi ca sử dụng Quản trị tiện ớch

4. Gúi ca sử dụng Bỏo cỏo thống kờ

5. Gúi ca sử dụng Quản trị phõn quyền người dựng

2.4.3. Thiết kế cho từng ca sử dụng

2.4.3.1. Gúi ca sử dụng Đăng nhập hệ thống

a. Ca sử dụng Đăng nhập

Chƣa ỏp dụng mẫu

a.1. Biểu đồ lớp thiết kế tham gia thực thi ca sử dụng

DK_DangNhap

+KiemTra _DDMK() +DoiMa tKha u()

FrmDangNhap +KhoiTa o() +KiemTra _TT() FrmGiaoDienC hinh +HienThi_Thuc Don() Frm_C hungThuc

+C hec k_Doma inUser()

NhanVien -Ma _NV -Ten_VT -Ten_DD -C huc Vu -Dia C hi -DienThoa i -Ma _Phong -Ma _LQ +STT -NghiC ongTa c -La nhDa o -DinhDa nh -Ma tKha u -Doma in +Them() +Sua () +Xoa () +G et_TenNV() +G et_TenDD() +La yDa nhSa c h() +La yThongTin() +G et_La nhDa o() +G et_C ongTa c () +G et_TenPhong() +G et_C huc Vu() +G et_DinhDa nh() +G et_Doma in() +G et_Ma tKha u() +Set_Ma tKha u()

NhomQuyen

-Ma _NhomQ uyen -TenNhomQ uyen +La yDa nhSa c h() +La yThongTin() +G et_Ten() +Them() +Sua () +Xoa () PhanQuyen -Ma _NV

-Ma _NhomQ uyen +La yDS_Pha nQ uyen() +C a p Nha t_Pha nQ uyen() +La yDS_NhomQ uyen_NV()

C hucNang -Ma _C huc Na ng -TenC huc Na ng -C md _Thuc Don +G etDS_C huc Na ng() +G et_Ten() +Them() +Sua () +Xoa () 1 0..* 1 0..* 0..* 1

Hỡnh 2.42: Biểu đồ lớp thiết kế thực thi ca sử dụng Đăng nhập a.2. Biểu đồ cộng tỏc

: Giá m đốc : FrmDangNhap : DK_DangNhap : FrmGiaoDienChinh : NhanVien 5 : Kiemtra_DDMK() 7 : Get_DinhDanh() 11 : HienThi_ThucDon() : Frm_ChungThuc 6 : Check_DomainUser() 4 : KiemTra_TT() 8 : Get_Domain() 9 : Get_TenPhong() 10 : Get_LanhDao()

3 : Nhập Đ ịnh danh, mật khẩu, domain 1 : Khởi tạ o

2 : KhoiTao()

Hỡnh 2.43: Biểu đồ cộng tỏc ca sử dụng Đăng nhập  Áp dụng mẫu Singleton

Áp dụng mẫu Singleton vào ca sử dụng đăng nhập cho phộp cỏc ngƣời dựng chỉ login một lần trờn toàn hệ thống. Những giỏ trị, thụng tin của ngƣời dựng sẽ đƣợc lƣu lại trong suốt quỏ trỡnh chạy chƣơng trỡnh. Bất cứ lỳc nào ngƣời phỏt triển đều cú thể làm việc với giỏ trị đú. Mẫu Singleton đảm bảo lớp NhanVien chỉ cú thể tạo đƣợc một thể hiện duy nhất.

Cấu trỳc mẫu Singleton:

DK_DangNhap

+KiemTra _DDMK() +DoiMa tKha u()

FrmDangNhap +KhoiTa o() +KiemTra _TT() FrmGiaoDienChinh +HienThi_Thuc Don() Frm_ChungThuc

+Chec k_Doma inUser()

NhanVien -Ma _NV -Ten_VT -Ten_DD -Chuc Vu -Dia Chi -DienThoa i -Ma _Phong -Ma _LQ +STT -NghiCongTa c -La nhDa o -DinhDa nh -Ma tKha u -Doma in #NV_INSTANCE +Them() +Sua () +Xoa () +G et_TenNV() +G et_TenDD() +La yDa nhSa c h() +La yThongTin() +G et_La nhDa o() +G et_CongTa c () +G et_TenPhong() +G et_Chuc Vu() +G et_DinhDa nh() +G et_Doma in() +G et_Ma tKha u() +Set_Ma tKha u() #NHANVIEN() +SING LETO N()

NhomQuyen

-Ma _NhomQ uyen -TenNhomQ uyen +La yDa nhSa c h() +La yThongTin() +G et_Ten() +Them() +Sua () +Xoa () PhanQuyen -Ma _NV

-Ma _NhomQ uyen +La yDS_Pha nQ uyen() +Ca p Nha t_Pha nQ uyen() +La yDS_NhomQ uyen_NV()

ChucNang -Ma _Chuc Na ng -TenChuc Na ng -Cmd _Thuc Don +G etDS_Chuc Na ng() +G et_Ten() +Them() +Sua () +Xoa () 1 0..* 1 0..* 0..* 1

Hỡnh 2.44: Biểu đồ lớp thiết kế ca sử dụng Đăng nhập ỏp dụng mẫu Singleton Mẫu Singleton là giải phỏp thiết kế cho phộp lớp NhanVien cú thể tự kiểm soỏt thể hiện của nú. Theo giải phỏp này, lớp NhanVien đƣợc thờm một thuộc tớnh tĩnh (static) lƣu thể hiện của lớp NhanVien và một phƣơng thức tĩnh để ngƣời dựng bất cứ lỳc nào đều cú thể truy xuất đến thể hiện duy nhất đú.

public class NhanVien {

//Khai bỏo cỏc thuộc tớnh của lớp

protected static NhanVien NV_INSTANCE = null; //Khai bỏo cỏc phƣơng thức của lớp

protected NhanVien(){} //Khởi tạo

public static NhanVien SINGLETON () {

if (NV_INSTANCE ==null) {

NV_INSTANCE = new NhanVien();

}

return NV_INSTANCE ; }

}

b. Ca sử dụng Đổi mật khẩu

b.1. Biểu đồ lớp thiết kế tham gia thực thi ca sử dụng

FrmDoiMatKhau

+KiemTra _TT()

DK_DangNhap

+KiemTra _DDMK() +DoiMa tKha u()

FrmDangNhap +KhoiTa o() +KiemTra _TT() NhanVien Thuộc tính và ph- ơng thức đ- ợ c mô tả ở Hình 2.42

Hỡnh 2.45: Biểu đồ lớp thiết kế thực thi ca sử dụng Đổi mật khẩu b.2. Biểu đồ cộng tỏc : Giá m đốc : FrmDoiMatKhau : DK_DangNhap : NhanVien : FrmDangNhap

1 : Nhập định danh, mật khẩu cũ, mật khẩu mỡ i

3 : KiemTra_DDMK() 4 : Get_DinhDanh() 5 : Get_MatKhau() 8 : KhoiTao()

Một phần của tài liệu Vận dụng công nghệ hướng đối tượng sử dụng mẫu thiết kế để phát triển ứng dụng Tổ chức và quản lý hoạt động giao công việc (Trang 89)

Tải bản đầy đủ (PDF)

(146 trang)