041_Ứng dụng khung làm việc cho bài toán lập lịch

4 526 0
041_Ứng dụng khung làm việc cho bài toán lập lịch

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

Thông tin tài liệu

- 56 - ỨNG DỤNG KHUNG LÀM VIỆC CHO BÀI TOÁN LẬP LỊCH Sinh viên thực hiện : Vũ Văn Thạch – Lớp K46CA – Email:thachvv@gmai.com Người hướng dẫn: PGS.TS. Nguyễn Văn Vỵ Phấn 1: Khung làm việc 1.Tổng quan về khung làm việc Như chúng ta đã thấy, không chỉ có mã nguồn được sử dụng lại mà các thiết kế và các đặc tả cũng được sử dụng lại một cách rất hiệu quả. Chúng được chia thành nhiều phần, và được lưu trữ trong các thư viện. Khi cần sử dụng lại, chúng được liên kết lại với nhau thông qua một số định dạng khác nhau tùy theo hoàn cảnh chúng được sử dụng. Chúng ta gọi chúng là các mô hình khung làm việc (model framework). Các công cụ để thể hiện và để liên kết các khung làm việc này là một dạng gói được dùng phổ biến, được gọi là khung làm việc (framework) hay gói tiêu bản (template package). 2.Các khung làm việc cộng tác Một sự cộng tác miêu tả sự tương tác giữa các đối tượng được thiết kế để làm việc với nhau. Chúng gửi thông điệp đi nhằm đạt được mục đích đặt ra khi chúng được thiết kế, tức là mỗi đối tượng được thiết kế để nhằm một mục đích nào đó và tất cả các hoạt động của nó đều nhằm vào hoàn thành mục đích đó. Hầu hết các kỹ năng thiết kế hướng đối tượng là về thiết kế sự cộng tác. Kỹ thuật CRC (classes: các lớp, responsibilities: các trách nhiệm, collaborations: các cộng tác) là kỹ thuật cơ bản của việc thiết kế hướng đối tượng và tất cả chỉ là sự phân chia các trách nhiệm giữa các đối tượng cộng tác với nhau để làm một công việc nào đó. 3. Các khung làm việc hợp thành Các khung làm việc được tạo ra có thể bao gồm nhiều khung làm việc khác, các khung làm việc có thể cộng tác với nhau để tạo ra một khung lam việc lớn hơn. Nhờ đó một công việc phức tạp có thể phân rã thành nhiều công việc nhỏ hơn và mỗi công việc nhỏ hơn này có thể được thực hiện bởi một hay nhiểu khung làm việc. Khi hợp nhất chúng lại với nhau để giải quyết một bài toán thì chúng phải làm việc ăn khớp với nhau. Phần 2: Vấn đề sử dụng lại 2.1 Sử dụng lại và tiến trình phát triển 2.1.1 Sử dụng lại là gì? Sử dụng lại là một loạt các kỹ thuật được hỗ trợ trrong hầu hết các công việc thiết kế và triển khai mà ta làm. Chính vì vậy mà một số nhân tố khác liên quan đến phát triển phần mềm như bảo trì, chất lượng phần mềm cũng được cải thiện nhờ sử dụng lại. 2.1.1.1 Nhập khẩu trội hơn hẳn so với việc cắt và dán Việc sử dụng lại không chỉ là sự cắt dán mã nguồn, một phương pháp “sử dụng lại” cổ điển, nhưng không mang lại hiệu quả cao mà việc sử dụng tập trung vào việc nhập khẩu các gói đã được đóng sẵn. Việc nhập khẩu các gói đóng sẵn có nhiều ưu đi ểm hơn hẳn so với việc cắt dán thông thường. - 57 - 2.1.1.2 Nguyên lý đóng -- mở và tính kinh tế của việc sử dụng lại Theo nguyên lý này, mọi thành phần phải là mở cho việc mở rộng, tức là khi sử dụng lại các thành phần, chúng phải dễ dàng được mở rộng nhưng chúng lại phải đóng đối với việc sửa đổi, tức là không cho phép can thiệp vào bên trong các gói đã được đóng sẵn và được nhập khẩu đó. 2.2 Các điểm cắm Khi nhập khẩu các gói vào trong phần mềm của chúng ta, thông thường các gói không chỉ ra chi tiết thành phần bên trong của nó mà nó chỉ đưa ra các điểm cắm để chương trình của chúng ta có thể truyền các tham số qua các điểm cắm này. Nhờ đó mà chúng ta có thể sử dụng lại các gói. Các điểm cắm này đôi khi còn được gọi là các ổ cắm bởi không phải cứ có điểm cắm thì có thể sử dụng lại tuỳ ý mà các thành phần cắm vào phải phù hợp với các điểm cắm đưa ra. 2.3 Sử dụng lại trong khung làm việc Không giống như việc sử dụng lại các thư viện như từ trước tới nay ta vẫn dùng là khi chương trình chính khi chạy sẽ gọi đến các thư viện, còn ở khung làm việc thì cương trình chính lại là khung làm viêc, các chương trình của người sử dụng khi chạy sẽ tự động truyền các tham số tới khung làm việckhung làm việc sẽ làm cho ứng dụng thực thi các chức năng theo đúng các tham số đã truyền vào. Phần 3: Ứng dụng khung làm việc cho bài toán lập lịch 1.Giới thiệu về khung làm việc JHotDraw JhotDraw là một khung làm việc ứng dụng có thể được phát triển cho các trình vẽ hình mang tính kỹ thuật. Ban đầu nó được phát triển trong SmallTalk bởi Kent Back và Ward Cunningham. Sau đó nó được phát triển Erich Gamma và Thomas Eggenschwiler (sau này được gọi là nhóm bộ tứ). Phiên bản hiện tại là 6.1 bê ta. Nó là một sản phầm mã nguồn mở rất nổi tiếng, được thế giới mã nguồn mở phát triển hơm 10 năm nay. 2. Giới thiệu bài toán lập lịchbài toán lập lịch đã thực hiện Lập lịch là một công việc hết sức quan trọng trong phát triển phần mềm. Việc lập lịch chính xác có một ý nghĩa quyết định đối với việc hoàn thành dự án đúng thời hạn, việc phân bổ tài nguyên và việc quy trách nhiệm trong một nhóm, một tổ chức,vv… Bài toán của ta là xây dựng một biểu đồ PERT bằng cách sử dụng lại khung làm việc. Bài toán lập lịch đã giải quyết là dựa trên khung làm việc JHotDraw, ta sử dụng lại khung làm việc của nó, kế thừa và mở rộng các lớp, nạp chồng các phương thức như các điểm cắm vào khung làm việc để tạo ra ứng dụng của mình. Chương trình cho phép ta có thể tạo ra một biểu đồ lập lịch Pert bằng tay, b ằng cách dùng các công cụ trên palette hay bằng một bảng các công việc được lưu trong một file và tự động vẽ các công việc, chúng cũng cho phép ta chỉnh sửa các thông tin về công việc và thêm người hay sửa người thực hiện công việc, thao tác với tài nguyên, thông tin ngày làm việc, chuyển sang biểu đồ Gantt… chương trình cũng cho phép bạn - 58 - lưu biểu đồ công việc hiện thời và mở chúng ra. Tài liệu tham khảo: [1] Desmond Francis D’Souza Alan Cameron Wills , Objects, Components,and Frameworks with UML The CatalysisSM Approach , [2] James W. Cooper, The Design Patterns Java Companion . [3] Jones & Bartlett - Introduction to Java and Software Design [4] Martin Flower, Analysis Pattern, Reusable Object Model . [5] OReilly- dot.NET.Framework.Essentials.3rd . Edition [6] Erich, Gamma, Rechard Helm, Ralph Jonhson, John Vlissides. Design Patterns, Element of reusable object- oriented software. [7] Tham khảo một số nguồn trên Internet, chủ yếu trong http://www.jhotdraw.org, http://sourceforgce.net - 59 - . và khung làm việc sẽ làm cho ứng dụng thực thi các chức năng theo đúng các tham số đã truyền vào. Phần 3: Ứng dụng khung làm việc cho bài toán lập lịch. PERT bằng cách sử dụng lại khung làm việc. Bài toán lập lịch đã giải quyết là dựa trên khung làm việc JHotDraw, ta sử dụng lại khung làm việc của nó, kế

Ngày đăng: 06/10/2013, 19:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan