Một Client khi sử dụng mẫu Visitor phải tạo một đối tƣợng ConcreteVisitor và sau đú duyệt qua cấu trỳc cỏc đối tƣợng, xem xột cỏc thành phần Element. Với mỗi thành phần Element đƣợc duyệt, nú gọi cỏc phƣơng thức Visitor tƣơng ứng với lớp của nú
1.3.11.4. Cỏc tỡnh huống ỏp dụng
Ta thƣờng sử dụng mẫu Visitor khi một cấu trỳc đối tƣợng chứa nhiều lớp đối tƣợng với nhiều giao tiếp khỏc nhau và ta muốn thực hiện cỏc chức năng trờn cỏc đối tƣợng mà phụ thuộc vào cỏc lớp con (lớp Concrete) của chỳng.
Nhiều chức năng, thao tỏc cần đƣợc thực hiện trờn những đối tƣợng trong một cấu trỳc đối tƣợng và ta muốn trỏnh làm phức tạp cỏc lớp của chỳng vỡ những chức năng thờm vào này. Visitor định nghĩa cỏc chức năng, thao tỏc này riờng vào một lớp khỏc.
Thụng thƣờng, lớp định nghĩa đối tƣợng cấu trỳc hiếm khi bị thay đổi, nhƣng ta thƣờng muốn định nghĩa cỏc chức năng, thao tỏc mới trờn cấu trỳc này. Việc thay đổi cấu trỳc đối tƣợng này đũi hỏi phải định nghĩa lại tất cả cỏc visitor. Do đú, nếu cấu trỳc đối tƣợng thƣờng xuyờn thay đổi, ta nờn định nghĩa cỏc chức năng ngay trong cỏc lớp đú.
1.3.11.5. Thuận lợi và hạn chế
Kỹ thuật Double Dispatch kết hợp với tớnh đa hỡnh (polymophism) đƣợc sử dụng đó thay thế hoàn toàn mệnh đề “If” làm cho mó chƣơng trỡnh dễ dàng mở rộng, hạn chế sự lệ thuộc và thay đổi mó chƣơng trỡnh khi mở rộng.
Tạo khả năng mềm dẻo trong việc thờm mới một hàm, thuật toỏn xử lý,... trờn cỏc đối tƣợng dữ liệu. Khi cần thờm hàm, thuật toỏn xử lý ta chỉ cần thờm vào lớp Visitor và cài đặt lại lớp ConcreteVisitor.
ConcreteVisitor) và những hành vi, phƣơng thức, hàm khụng thay đổi (đƣợc cài trong đối tƣợng dữ liệu ConcreteElement).
Hạn chế của mẫu này là việc tạo thờm một đối tƣợng dữ liệu mới (ConcreteElement) sẽ rất khú khăn, bởi vỡ lỳc đú sẽ làm thờm số phƣơng thức ảo ở lớp Visitor và lỳc đú cỏc phƣơng thức của lớp ConcreteVisitor cũng tăng lờn. Vỡ vậy, ta nờn ỏp dụng mẫu này với những đối tƣợng dữ liệu khụng thay đổi, mở rộng và chỉ cú cỏc hành vi, thuật toỏn, phƣơng thức tỏc động lờn đối tƣợng dữ liệu là đƣợc cải tiến và thay đổi.
CHƯƠNG 2
VẬN DỤNG MẪU THIẾT KẾ HÀNH VI TIẾN HÀNH PHÂN TÍCH
THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG “TỔ CHỨC VÀ QUẢN Lí HOẠT ĐỘNG GIAO CễNG VIỆC”
Trong chƣơng này, chỳng ta phõn tớch cỏc yờu cầu, nghiệp vụ bài toỏn, chỉ ra cỏc ca sử dụng, cỏc tỏc nhõn của hệ thống, cỏc mụ hỡnh ca sử dụng, mụ tả và làm mịn dần bằng việc mụ tả, phõn tớch từng ca sử dụng. Phần thiết kế chỉ ra mụ hỡnh thiết kế một số ca sử dụng cơ bản. Dựa trờn kết quả phõn tớch và thiết kế, tiến hành xõy dựng cỏc module phần mềm trờn mỏy tớnh.
2.1. Nắm bắt yờu cầu bài toỏn 2.1.1. Bài toỏn đặt ra 2.1.1. Bài toỏn đặt ra
Trong một Cụng ty, doanh nghiệp, vấn đề quản lý nhõn viờn thực hiện cụng việc, lờn cỏc kế hoạch và theo dừi, giỏm sỏt nhõn viờn thực hiện cụng việc là một vấn đề rất đƣợc quan tõm bởi cỏc nhà quản lý doanh nghiệp. Việc lờn kế hoạch thực hiện cụng việc, phõn cụng nhõn lực thực hiện cũng nhƣ theo dừi, giỏm sỏt về khối lƣợng, chất lƣợng, tiến độ thực hiện cụng việc một cỏch khoa học, chặt chẽ là một trong những yờu tố quan trọng đƣợc đặt lờn hàng đầu trong cỏc doanh nghiệp sản xuất. Ngoài việc quản lý thực hiện sản xuất, kinh doanh, cỏc nhà quản lý doanh nghiệp cũng cú cỏc chế độ khen thƣởng dƣới nhiều hỡnh thức tới cỏc nhõn viờn của mỡnh một cỏch kịp thời nhằm khuyến khớch, động viờn đội ngũ nhõn viờn của mỡnh nhiệt tỡnh phấn đấu nõng cao năng suất và chất lƣợng thực hiện cụng việc.
Để đạt đƣợc mục tiờu đú, cỏc nhà quản lý phải lƣu thụng tin cỏc hoạt động liờn quan đến quản lý, phõn cụng xử lý cụng việc cũng nhƣ nhõn lực và kế hoạch thực hiện cỏc cụng việc đú.
Với cỏc doanh nghiệp lớn, số lƣợng nhõn viờn nhiều và khối lƣợng cụng việc xử lý hằng ngày cũng tƣơng đối lớn, việc quản lý, theo dừi việc thực hiện cụng việc, phõn cụng giải quyết cụng việc,... đũi hỏi nhiều cụng sức và thời gian. Do đú, để thuận lợi cho cụng tỏc quản lý cần cú hệ thống thụng tin dựa trờn mỏy tớnh.
Do số lƣợng cỏc cụng việc rất lớn, vỡ vậy yờu cầu hệ thống phải đơn giản để cú thể thao tỏc nhanh chúng và chớnh xỏc.
Bài toỏn “tổ chức và quản lý hoạt động giao cụng việc” là bài toỏn phổ biến ở tất cả cỏc cụng ty, cơ quan, doanh nghiệp. Mục đớch quản lý của cỏc Cơ quan, Doanh nghiệp là nhƣ nhau, nhƣng do cỏch quản lý khỏc nhau nờn luận văn khụng đi sõu vào cỏc hoạt động của một Doanh nghiệp cụ thể. Ở đõy chỉ tập trung vào những chức năng chớnh tiờu biểu cho nhiều Cơ quan, Doanh nghiệp:
1. Quản lý đầu mục cụng việc 2. Quản lý giao cụng việc
3. Quản lý luồng thụng tin chỉ đạo giải quyết cụng việc 4. Quản lý phõn quyền duyệt, xem, xử lý cụng việc 5. Thống kờ, bỏo cỏo và tỡm kiếm
2.1.3. Mụ tả nghiệp vụ quản lý
2.1.3.1. Xỏc định cỏc thụng tin chung về quản lý cụng việc
Trong cỏc Cơ quan, doanh nghiệp, cơ cấu tổ chức quản lý-điều hành điển hỡnh đƣợc phõn theo cấp quản lý từ cao xuống thấp nhƣ sau:
1. Ban Giỏm đốc (Giỏm đốc, cỏc phú giỏm đốc, trợ lý, thƣ ký giỏm đốc) 2. Lónh đạo phũng (Trƣởng phũng và cỏc phú phũng, thƣ ký phũng) 3. Tổ (Tổ trƣởng, tổ phú, trƣởng nhúm, ...) 4. Chuyờn viờn Ban Giỏm Đốc (Giỏm đốc, phú giỏm đốc, thư ký, trợ lý,...) Lónh đạo phũng ban 1 (Trưởng phũng, phú phũng, Văn thư phũng) Tổ 1 Lónh đạo phũng ban n (Trưởng phũng, phú phũng, Văn thư phũng) Tổ m ... ... Nhõn viờn 1 ... Nhõn viờn k