3.2. Các mô hình phân tích
3.2.3.2 Xây dựng biểu đồ lớp trong pha phân tích
Biểu đồ lớp là một trong những biểu đồ quan trọng nhất, có tính quyết định trong tiến trình phát triển phần mềm hướng đối tượng. Trong pha phân tích, biểu đồ lớp chưa được xây dựng hoàn chỉnh mà chỉ có các nhiệm vụ chính là:
- Xác định các lớp
- Xác định các thuộc tính và một số phương thức cơ bản (chưa chi tiết các phương thức).
- Bước đầu chỉ ra một số mối quan hệ trong sơ đồ lớp.
* Xác định các lớp trong hệ thống
Các lớp biên dùng để thể hiện và truyền đạt các thông tin trong hệ thống với các hệ thống khác (ví dụ giữa người với máy): Các ca sử dụng nhập dữ liệu thông tin sự cố tin ho ̣c , hê ̣ thống cần các lớp biên là Form NguoiSuDung, Form DanhMuc, FormDanhMucThietBi, Form HoaDonNhapXuat, Form SuCoTinHoc, Form TraCuuThietBi, Form TraCuuSuCo, Form BaoCaoThongKe ...
Các lớp thực thể được dùng để mô tả các đối tượng được lưu trữ lâu dài trong hệ thống. Ta có thể tìm ra các lớp thực thể từ những danh từ liên quan đến lĩnh vực của bài toán đã được mô tả trong các ca sử dụng. Với hệ thống này ta sẽ có các lớp thực thể sau: NguoiSuDung, DanhMucChung, DanhMucLinhKien, DanhMucThietBi, LinhKien, ThietBi, HoaDonNhapXuat, SuCoTinHoc.
Các lớp điều khiển được sử dụng để kết nối các đối tượng của lớp biên với các đối tượng của lớp thực thể và kiểm soát trình tự các hoạt động bên trong hệ thống. Với
hệ thống quản lý thiết bị và sự cố ta sẽ có các lớp điều khiển: DK QuanLyNguoiSuDung, DK QuanLyDanhMuc, DK QuanLyNhapXuat, DK QuanLySuCoTinHoc, DK TraCuuHoSo, DK KetXuatBaoCaoThongKe, …
Các lớp DAO (Data Access Object) được sử dụng để ánh xạ các đối tượng của lớp thực thể với dữ liệu được lưu trữ trong cơ sở dữ liệu. Với cách sử dụng mẫu DAO, với mỗi lớp thực thể cần thao tác sẽ có một lớp DAO tương ứng. Với hệ thống này ta sẽ có các lớp DAO sau: DAO NguoiSuDung, DAO DanhMuc, DAO SuCo, DAO LinhKien, DAO ThietBi, …
Hình 3.9. Biểu đồ lớp của hệ thống quản lý thiết bị và sƣ̣ cố tin ho ̣c
Mô tả chi tiết một số lớp
a) NguoiSuDung
Tên trƣờng Kiểu dữ liệu Kích cỡ Giải thích
DinhDanh String 18 Định danh, tài khoản người dùng
MaDonVi Int Mã đơn vị
HoTen String 50 Họ và tên người dùng
DienThoai String 30 Điện thoại
MatKhau String 50 Mật khẩu đăng nhập hệ thống b) LinhKien
Tên trƣờng Kiểu dữ liệu Kích cỡ Giải thích
Ma Int Mã linh kiện
Ten String 30 Tên linh kiện
MaHangSanXuat Int Mã hãng sản xuất
Model String 50 Model link kiện
ThongSoKyThuat Text Thông số kỹ thuật linh kiện
Ghichu String 500 Ghi chú
c) ThietBi
Tên trƣờng Kiểu dữ liệu Kích cỡ Giải thích
Ma Int Mã thiết bị
Ten String 30 Tên thiết bị
MaHangSanXuat Int Mã hãng sản xuất
Model String 50 Model thiết bị
ThongSoKyThuat Text Thông số kỹ thuật thiết bị
Ghichu String 500 Ghi chú
d) SuCoTinHoc
Tên trƣờng Kiểu dữ liệu Kích cỡ Giải thích
Ma_Suco Int Mã sự cố
Ma_Tansuat Int Tần xuất xảy ra sự cố
Ma_Loaisuco Int Mã loại sự cố
Ma_Mucdo Int Mức độ
Ma_Thietbi Int Mã thiết bị
Motasuco Nvarchar 500 Mô tả sự cố
Xuly Nvarchar 500 Cách xử lý
Ketqua Nvarchar 500 Kết quả
Taichinh Decimal 18,0 Chi phí tài chính
Nguoigoi Nvarchar 50 Người gọi báo sự cố
Nguoinhan Nvarchar 50 Người tiếp nhận thông tin sự cố Nguoixuly Nvarchar 50 Người xử lý sự cố
Nguoixulycap1 Nvarchar 50 Người xử lý cấp 1 Nguoixulycap2 Nvarchar 50 Người xử lý cấp 2
Ngaygoi Datetime Ngày gọi
Ngaycap1 Datetime Ngày xử lý cấp 1
Ngaycap2 Datetime Ngày xử lý cấp 2
Ngayketthuc Datetime Ngày kết thúc
Ma_Phong Int Mã phòng
Ma_Nha Int Mã nhà
Ma_Khuvuc Int Mã khu vực
Ma_Vu Int Mã vụ
Ma_Cauhinh Int Mã cấu hình