Mục đích của hoạt động lựa chọn mẫu là lựa chọn các mẫu đáp ứng đầy đủ các trách nhiệm của mỗi thành phần khái niệm mà được xác định từ việc xác định yêu cầu của ứng dụng. Các mẫu này sẽ được sử dụng trong giai đoạn thiết kế của phương pháp POAD để xây dựng các khung nhìn mức mẫu.
Tiến trình lựa chọn mẫu giống như kỹ thuật đạt đến giải pháp giải quyết vấn đề. Các vấn đề được xác định qua tập thành phần và trách nhiệm của chúng được xác định từ hoạt động phân tích yêu cầu của ứng dụng. Các giải pháp này được xác định bằng được cung cấp từ việc tìm và lấy mẫu. Quá trình lựa chọn mẫu là tiến trình đạt đển giải pháp (mẫu thiết kế) cho các vấn đề và trách nhiệm của các thành phần khái niệm.
GoF đã đưa ra một số đề xuất trong vấn đề lựa chọn một mẫu trong danh mục hai mươi ba mẫu chung của họ [Gamma et al 1995]. Những đề xuất này dựa trên kết quả thực nghiệm và lập luận của người thiết kế.
Kiểm tra xem mẫu giải quyết vấn nào bằng cách duyêt qua phần giải pháp và đánh giá xem giải pháp mà mẫu cung cấp có thể sử dụng để giải quyết vấn đề đang có không.
Duyệt phần nội dung, mà trong đó mô tả vấn đề là cái gì và có tương tự vấn đề đang có hay không.
Nghiên cứa xem các mẫu có liên quan với nhau như trhế nào. Tìm kiếm các mẫu tương tự hoặc các mẫu thường được sử dụng theo cặp, theo nhóm.
2.2.4 Thiết kế hướng mẫu
2.2.4.1 Tổng quan
Trong giai đoạn này, sử dụng các mẫu trong tập mẫu đã được lựa chọn qua giai đoạn phân tích làm cơ sở xây dựng bản thiết kế đầu tiên.
Giai đoạn thiết kế gồm ba hoạt động chính:
1. Xây dựng sơ đồ mức mẫu thể hiện cấu tạo chung của các mẫu. 2. Xây dựng sơ đồ chi tiết thể hiện mối quan hệ giữa các mẫu.
3. Xây dựng sơ đồ chi tiết ứng dụng với cấu tạo bên trong của các mẫu.
Giai đoạn này tạo ra các mô hình thiết kế. Các loại mô hình thiết kế và các yếu tố sử dụng trong mô hình sẽ được sử dụng trong chương này với mục đích phát triển mô hình thiết kế hướng mẫu.
2.2.4.2 Mục đích của việc thiết kế hướng mẫu
Mục đích của giai đoạn thiết kế là sử dụng các mẫu thiết kế làm đơn vị cơ sở để tạo ra các bản thiết kế của ứng dụng. Bắt đầu từ tập các mẫu đã được lựa chọn trong giai đoạn phân tích.Chi tiết của giai đoạn thiết kế gồm :
Thiết kế tổng quát ứng dụng từ một hoặc nhiều sơ đồ mức mẫu.
Thiết kế giao diện dựa trên mối liên hệ giao diện giữa các mẫu.
Thiết kế chi tiết ứng dụng dựa trên cấu tạo bên trong của các mẫu.
2.2.4.3 Cấu trúc mẫu
Mục đích của giai đoạn này là tạo ra mô hình thiết kế của ứng dụng dựa trên các mẫu thiết kế.
a. Tạo các thể hiện của mẫu
Trên cơ sở các tài liệu mô tả mẫu về cấu tạo, các vấn đề mẫu giải quyết, các thành phần mẫu trong ngữ cảnh sử dụng phù hợp với mô hình ứng dụng hiện tại, đối chiếu mỗi mẫu với các trường hợp sử dụng trong thực tế, từ đó tiến hành định danh mẫu theo hai bước:
Thứ nhất xác định tên ứng dụng cụ thể (định danh) của mẫu và loại của mẫu, tên này sẽ được sử dụng trong suốt quá trình thiết kế.
Thứ hai là gắn các thuật ngữ ứng dụng cụ thể cho các thành phần bên trong của mẫu, các thuật ngữ này cũng được sử dụng trong suốt quá trình thiết kế chi tiết.
b. Nhiều thể hiện của cùng một kiểu
Người thiết kế có thể sử dụng nhiều định danh cho cùng một loại mẫu. Định danh của mẫu là để phân biệt các mẫu trong mô hình thiết kế.
c. Xác định các mối quan hệ giữa các thể hiện của mẫu
Sau khi định danh mẫu, bước tiếp theo là xác định mối quan hệ giữa các mẫu này. Trong phương pháp POAD thì mối quan hệ giữa các mẫu định danh là phụ thuộc. Người thiết kế sẽ quyết định là có hoặc không có quan hệ phụ thuộc giữa các mẫu.
Rất khó để hiểu mối quan hệ giữa các mẫu nếu chỉ dựa trên các thể hiện tĩnh của ứng dụng. Các kết quả thu được từ phân tích ứng dụng sẽ hỗ trợ việc xác định mối quan hệ giữa các mẫu. Các nhà thiết kế có thể sử dụng ngữ cảnh UML hoặc sơ đồ tương tác để làm thể hiện mối quan hệ giữa các mẫu. Hoặc có thể sử dụng các tài liệu mẫu thu được từ quá trình phân tích bao gồm các mô tả về các thành phần ứng dụng và chức năng của chúng…Nói chung có một số kĩ thuật mà người thiết kế có thể sử dụng để xác định quan hệ giữa các mẫu như tìm hiều về các trạng thái của hệ thống, hành vi của đối tượng, sơ đồ đối tượng, …
d. Phát triển các biểu đồ mức mẫu
Trong suốt quá trình định danh mẫu và xác định quan hệ giữa các mẫu định danh, người thiết kế có thể phát triển sơ đồ mức mẫu. Sơ đồ này thể hiện các định danh mẫu và quan hệ giữa chúng. Sử dụng mô hình UML để biểu diễn sơ đồ mức mẫu. Sơ đồ mức mẫu là một biểu diễn của mẫu, nó bao gồm các kí hiệu và cú pháp thể hiện. Sơ đồ mức mẫu thể hiện các định danh mẫu và quan hệ giữa các định danh.
e. Hệ thống con và các khung làm việc
Người thiết kế có thể xây dựng sơ đồ mức mẫu cho toàn bộ ứng dung. Với các ứng dụng lớn và phức tạp, ta nên chia ứng dụng thành tập các hệ thống con hay khung làm việc. Khi đó, người thiết kế có thể xây dựng sơ đồ mức mẫu cho từng khung làm việc một. Khi không thể phân tích hệ thống theo một tập các mẫu do giới hạn của thư viện mẫu thì việc sử dụng khung làm việc là cần thiết. Khung làm việc kết hợp với sơ đồ mức mẫu là phân tích chi tiết ở mức thiết kế thấp hơn trong mô hình hướng đối tượng truyền thống như sơ đồ lớp.
f. Sản phẩm
Sản phẩm của giai đoạn này là sơ đồ mức mẫu của ứng dụng hoặc của mỗi hệ thống con hay khung làm việc.
2.2.4.4 Cấu trúc các mô hình mức mẫu chi tiết
Mục đích của hoạt động này là dựa vào sơ đồ thể hiện mẫu tìm hiểu cấu trúc bên trong của mẫu, từ đó xây dựng sơ đồ lớp của ứng dụng.
Tiến trình thực hiện:
a. Khai thác cấu trúc mẫu
Trong hoạt động này, người thiết kế tìm hiều về sơ đồ lớp bên trong mẫu dựa trên sơ đồ thể hiện mẫu. Trong môi trường phát triển tích hợp (IDE) hỗ trợ POAD, hoạt động này thường được thực hiện tự động và người thiết kế sẽ nhận được sơ đồ lớp của mỗi mẫu.
Người thiết kế cần tìm hiều các tài liệu mẫu, các thành phần cụ thể bên trong sơ đồ lớp và cách giải quyết các vấn đề thiết kế. Những hiểu biết thu được từ hoạt động này rất hữu ích cho việc xây dựng sơ đồ lớp cho toàn thể ứng dụng.
b. Những khía cạnh động là rất quan trọng
Hướng hoạt động của mẫu giúp người thiết kế hiều cách mà các thành phần bên trong mẫu liên hệ với bên ngoài, các tài liệu này tuy không đóng vai trò quyết định trong mô hình thiết kế ứng dụng nhưng lại rất quan trọng đối với sơ đồ lớp bên trong mỗi mẫu.
Trong POAD, sơ đồ lớp là giai đoạn gần với mức mã nguồn nhất, mỗi lớp trong sơ đồ tương ứng với một lớp trong mã ứng dụng, các ngôn ngữ hướng đối tượng đều hỗ trợ lớp trong xây dựng mã chương trình. Còn chuỗi các sự kiện, tương tác, đối tượng,… không tương ứng một một với mã chương trình, nhưng có vai trò thực hiện các phương thức trong mỗi lớp.
Một phần của hoạt động này là việc tìm hiểu hoạt động và vai trò của mỗi thành phần cụ thể, nó sẽ giúp người thiết kế hiểu sâu các chi tiết bên trong mẫu để giải quyết các vấn đề ứng dụng cụ thể.
c. Sự thực hiện các giao diện
Mỗi mẫu có một tập các thể hiện, các thể hiện có thể là phương thức hoặc lớp. Người thiết kế cần xác định các thành phần thiết kế bên trong thực thi các thể hiện này. Mỗi thể hiện trong sơ đồ thể hiện mẫu tương ứng với một dấu hiệu bên trong thiết kế mẫu. Môi trường IDE sử dụng phần kết nối để chỉ ra liên hệ giữa thể hiện và các thành phần bên trong mẫu. Bộ phận kết nối này thường đơn giản như UML thực thi quan hệ giữa thể hiện với lớp trong sơ đồ lớp.
f. Sản phẩm
Sản phẩm của giai đoạn này là sơ đồ mẫu chi tiết sử dụng làm đầu vào trong các giai đoạn thiết kế sau
2.4 UML trợ giúp các mẫu thiết kế
UML là sự cố gắng hợp nhất nhiều kỹ thuật mô hình hóa hướng đối tượng. Một phương pháp luận phát triển trong mô hình hướng đối tượng cần tận dụng tối đa các mô hình UML sẵn có. Tuy nhiên, không phải trong bất kỳ trường hợp nào cũng sử dụng cú pháp và ngữ nghĩa của mô hình UML đang tồn tại để mô tả các mô hình cho phương pháp luận phát triển cụ thể. Phân tích viên và người làm phương pháp luận tập trung nỗ lực kết hợp và mở rộng UML với cú pháp và ngữ nghĩa được yêu cầu cho phương pháp luận phân tích và thiết kế cụ thể. Có hai cách mở rộng khả năng mô hình hóa UML.
Cách thứ nhất và cũng là cách đơn giản nhất là sử dụng cơ chế mở rộng UML. UML cung cấp một vài cơ chế mở rộng cho nhiều cấu trúc mô hình hóa khác nhau như rập khuôn, ràng buộc, khai báo thẻ, và gán giá trị thẻ. Cách thứ hai khó hơn, là thêm các cấu trúc mô hình hóa mới vào ngôn ngữ. Phương pháp này được thực hiện tại mức siêu mô hình mà ở đó khái niệm trình diễn cấu trúc mới có liên quan đến các khái niệm UML khác được định nghĩa trong siêu mô hình UML. Các nhà thiết kế thường được khuyến cáo sử dụng phương pháp thứ nhất.
Cách thứ hai sử dụng các cấu trúc UML khác nhau để diễn tả cùng một khái niệm. Ví dụ, để mô hình hóa mẫu thiết kế trong UML, thiết kế viên tận dụng các cấu trúc UML khác nhau: biểu đồ lớp (class diagram), gói (package), tiêu bản (template), rập khuôn (stereotype).. Bởi vì UML được phát triển như một ngôn ngữ mô hình hóa tổng quát không thích hợp cho tiến trình thiết kế và phương pháp luận thiết kế cụ thể. Vì thế, mỗi một phương pháp luận thiết kế sử dụng cấu trúc UML một cách phù hợp để nêu bật các khía cạnh đặc biệt của phương pháp, khái niệm và tiến trình thiết kế.
Khi sử dụng mô hình thiết kế để biểu diễn mẫu thiết kế, chúng ta dựa trên các mô hình đang tồn tại là kết quả của việc nghiên cứu nghiêm túc và cố gắng. UML là một chuẩn mô hình hóa ứng dụng hướng đối tượng thực tế và vì vậy sự biểu diễn POAD của các mẫu và sự kết hợp của chúng nên gắn với cấu trúc mô hình hóa UML.
Sử dụng UML để mô tả mô hình quá trình phát triển, giúp đỡ các phương pháp viên và người làm mô hình trong quá trình hiểu và thực hành POAD bằng việc liên kết các mô hình thành mô hình UML đa năng.
Trong UML, chi tiết sự cộng tác được minh họa trong biểu đồ cộng tác hay biểu đồ tương tác. Ở đó, thông điệp giữa các đối tượng được thể hiện ra qua các mối quan hệ liên kết từ các lớp mẫu. Vì thế, mô hình thiết kế cho một mẫu sẽ có một biểu đồ lớp nắm bắt cấu trúc của nó và một biểu đồ tương tác để nắm bắt hành vi của đối tượng. Nhưng cả hai biểu đồ này đều mô tả thiết kế bên trong của mẫu. Ví dụ, hình 2.5 minh họa cấu trúc và hành vi của mẫu Observer. Các biều đồ này mô tả thiết kế bên trong và hành vi của mẫu quan sát nhưng không xem mẫu Observer như một đơn vị cấu thành.
Có thế biểu diễn sự cộng tác như một thực thể đơn mà có thể được quan sát từ phía ngoài như một mô hình cấu trúc. Ví dụ, sự cộng tác được sử dụng để xác định mẫu thiết kế trong thiết kế hệ thống. Hình 2.9 minh họa cấu trúc UML sử dụng để mô hình hóa một sự cộng tác.
(a) (b)
Hình 2.9 Biểu đồ lớp (a) và Biểu đồ tương tác (b) của mẫu Observer.
ConcreteObserver ObserverState Update() bservers ConcreteSubject SubjectState getState() Subject Attach(Observer) Detach(Observer) Notify() Observer Update() subjec t
Trong UML, mẫu tương đương với một sự cộng tác, mô tả cấu trúc của một mẫu thiết kế. Sự cộng tác là một cách mô hình hóa sự cộng tác giữa các bên tham gia khi các bên tham gia được xác định bởi tham số đầu vào. Khi thể hiện cấu trúc cộng tác tham số UML, các thành phần mô hình thực tế được thay thế bới các đối số trong khai báo mẫu. Cộng tác tham số trong UML được biểu diễn bằng một hình elip nét đứt chứa tên của nó. Một đường đứt nét gán nhãn được kéo từ ký hiệu cộng tác đến từng ký hiệu của các bên tham gia. Mỗi đường được gán nhãn vai trò của tác nhân tham gia trong ngữ cảnh cộng tác. Vì thế, sự cộng tác tham số chỉ ra cách sử dụng mẫu thiết kế và các bên tham gia cộng tác trong mẫu.
Chƣơng 3
HỆ THỐNG GIÁM SÁT TRẠNG THÁI HOẠT ĐỘNG TRONG TRƢỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG
3.1 Tổng quan về trƣờng Đại học Dân lập Hải phòng
Trường Đại học Dân lập Hải Phòng được đặt tại Phường Dư Hàng Kênh - Quận Lê Chân – Thành phố Hải Phòng. Trường thành lập ngày 24/09/1997, đến nay nhà trường đã xây dựng được đội ngũ giáo viên cơ hữu và cán bộ công nhân viên hơn 200 người. Hiện tại nhà trường đang đào tạo khoảng 6000 sinh viên hệ đại học chính quy với các ngành nghề: Công nghệ Thông tin, Điện tử viễn thông, Điện dân dụng và công nghiệp, Xây dựng dân dụng, Xây dựng cầu đường, Công nghệ Hoá dầu, Chế biến và bảo quản thực phẩm, Kỹ thuật môi trường, Kỹ thuật nông nghiệp, Quản trị doanh nghiệp, Quản trị du lịch văn phòng, Kế toán kiểm toán, Văn hoá du lịch và Ngoại ngữ.
Nhiệm vụ chính của nhà trường là đào tạo các kỹ sư cử nhân có trình độ nghiệp vụ cao trong các lĩnh vực nêu trên phục vụ nguồn nhân lực cho toàn miền duyên hải và cả nước. Nhà trường đang từng bước hiện đại hóa nội dung và quá trình quản lý, cố gắng để tin học hoá tất cả các hoạt động quản lý có đủ điều kiện trong nhà trường.
Nhà trường có khu giảng đường và khu khách sạn sinh viên: Khu giảng đường phục vụ việc học tập, nghiên cứu, thực hành thực nghiệm của sinh viên với khu nhà 6 tầng (nhà A), 3 khu nhà 3 tầng nối liền nhau (khu B, khu C, khu D), khu nhà F, khu hiệu bộ 2 tầng và khu nhà E với tổng số phòng học là 64, các phòng thực hành vi tính, phòng thí nghiệm Điện, Điện tử, Môi trường, Hoá, … và các phòng làm việc của cán bộ công nhân viên. Khu khách sạn sinh viên với 3 khu nhà ở sinh viên liên hợp, nhà ăn, nhà tập đa năng, sân vận động, bể bơi phục vụ việc sinh hoạt ăn ở vui chơi giải trí của sinh viên.
Cùng với sự phát triển của công nghệ thông tin và kỹ thuật thu nhận dữ liệu tự động sử dụng hệ thống thẻ từ, mã vạch, card thông minh… Người ta có thể kết hợp các kỹ thuật này để xây dựng một hệ thống giám sát các hoạt động trong một không gian nào đó nhằm đáp ứng cho nhu cầu quản lý một cách có hiệu quả và khoa học. Với mong muốn ứng dụng triệt để những thành tựu của công nghệ thông tin vào trong lĩnh vực quản lý, Trường Đại học Dân lập Hải Phòng có nhu cầu phát triển một hệ