0
Tải bản đầy đủ (.pdf) (83 trang)

Sơ đồ tiến trình phân tích

Một phần của tài liệu PHÂN TÍCH THIẾT KẾ HỆ ĐA TÁC TỬ HƯỚNG TRÊN NỀN TẢNG PHÁT TRIỂN JADE.PDF (Trang 40 -40 )

3.3.2. Mô tả các bƣớc

a) Bước 1 – Xác định và phân tích các ca sử dụng của hệ thống

Phân tích ca sử dụng là một phƣơng pháp có hiệu quả để nhận biết các yêu cầu thực tế và tiềm năng của một hệ thống mới. Mỗi ca sử dụng sẽ biểu diễn một hoặc

nhiều tình huống,mô tả làm cách nào hệ thống sẽ tƣơng tác với ngƣời dùng cuối và

các hệ thống khác để đạt đƣợc mục đích nào đó. Có một số lƣợng lớn các chuẩn đã

Hình 3.1 Các kiểu dập khuôn bổ sung

Phân tích ca sƣ̉ dụng

Xác đi ̣nh nhiê ̣m vụ của tác tử

Xác đi ̣nh

nơi cƣ trú Xác đi ̣nh tác tử cơ sở

Gán trách nhiê ̣m

Hình 3.2. Sơ đồ tiến trình phân tích Yêu cẩu của ngƣời sƣ̉ du ̣ng Tách/gô ̣p tác tƣ̉ Bảng

nhiê ̣m vu ̣ Danh sách

nơi cƣ trú Danh sách tác tử cơ sở Bảng trách nhiê ̣m của tác tử Danh sách tác tử

đƣợc xây dựng để biểu diễn các ca sử dụng. Phổ biến nhất là đặc tả UML với các ký pháp đồ họa đã đƣợc định nghĩa.

Các ca sử dụng cũng đƣợc sử dụng trong phƣơng pháp hƣớng đối tƣợng nhƣng khả năng áp dụng của nó không bị giới hạn trong các hệ thống hƣớng đối tƣợng bởi vì nó không phải là hƣớng đối tƣợng tự nhiên. Do đó chúng ta có thể sử dụng các ca sử dụng mà không cần sử dụng thêm thành phần gì khác để phân tích các yêu cầu chức năng của hệ thống đa tác tử.

Dựa trên cơ sở của bài toán đƣợc đƣa ra, sau khi phỏng vấn các ngƣời sử dụng tiềm năng chúng ta có thể liệt kê ra một danh sách các khả năng có thể có. Các ca sử dụng cũng sẽ đƣợc định nghĩa, tạo thành mô hình ca sử dụng.

b) Bước 2 - Xác định danh sách nhiệm vụ của các tác tử

Mô hình hƣớng tác tử là hƣớng mục tiêu. Theo trình tự, bƣớc đầu tiên phải định nghĩa các nhiệm vụ của các tác tử. Các nhiệm vụ đƣợc xác định sẽ là cơ sở để xác định các tác tử.

Các nhiệm vụ của tác tử đƣợc khai báo bởi các thuộc tính nhƣ: tên của nhiệm

vụ, các siêu nhiệm vụ của nó nếu có (nhiệm vụ cha), các nhiệm vụ con( nếu nhƣ nó

có thể chia nhỏ thành các nhiệm vụ con), các phương án dự phòng để đạt đƣợc

nhiệm vụ và các ngoại lệ. Ngoài ra còn có thể có nguyên nhân thất bại của nhiệm

vụ và phƣơng án dự phòng cho nhiệm vụ đó.

c) Bước 3 – Xác định nơi cư trú (đối vơi các hệ tác tử di động)

Sau khi xác định đƣợc nhiệm vụ, bƣớc tiếp theo là xác định các nơi cƣ trú của

các tác tử. Khái niệm “nơi cư trú” gắn liền với các tác tử di động. Khi một tác tử di

động tự di chuyển đi, nó cần duyệt qua các môi trƣờng thực thi đƣợc gọi là các “nơi

cư trú”. Một nơi cƣ trú là một ngữ cảnh trong hệ thống tác tử mà ở đó tác tử có thể hoạt động đƣợc. Ngữ cảnh này cung cấp các chức năng nhƣ điều khiển truy cập. Nơi cƣ trú nguồn và nơi cƣ trú đích trong một lần dịch chuyển của tác tử có thể trên

cùng một hệ thống tác tử hoặc trên các hệ thống tác tử khác nhau nhƣng hỗ trợ cho cùng một kiểu tác tử. Một nơi cƣ trú liên quan mật thiết tới một vị trí vật lý nào đó.

Nó bao gồm tên nơi cư trú, địa chỉ của hệ thống tác tử mà nơi cƣ trú đó đang tồn tại.

Khi một máy khách yêu cầu địa chỉ của một tác tử, nó sẽ đƣợc cung cấp địa chỉ của nơi cƣ trú mà tác tử đó đang hoạt động.

Các thuộc tính của nơi cƣ trú bao gồm: tên nơi cƣ trú, chức năng, và siêu nơi cƣ trú nếu có. Nơi cƣ trú có thể quyết định cho tác tử từ một tập các nơi cƣ trú khác tới

cƣ trú nếu điều đó đƣợc đảm bảo về mặt an toàn và bảo mật.

Tác tử có thể đƣợc xem xét nhƣ một đối tƣợng hoạt động. Ở đây khái nhiệm ngƣời sở hữu tác tử đƣợc sử dụng nhằm mục đích có các môi trƣờng bảo mật cho các tác tử. Ngƣời sở hữu của một tác tử đƣợc định nghĩa là một nơi cƣ trú, mà ở đó tác tử đƣợc khởi tạo. Ngƣời sở hữu có thể đƣợc sử dụng giống nhƣ một định danh an toàn cho tác tử.

Để phục vụ cho tác tử di động, có ba hành động mà nó có thể thực hiện[26]:

 Tác tử di động có thể dịch chuyển tới một nơi cƣ trú nào đó.

 Gặp một tác tử khác mà nó cƣ trú trên cùng một nơi cƣ trú.

 Kết nối tới một tác tử hoặc một nơi cƣ trú khác.

d) Bước 4 - Xác định các tác tử cơ sở

Một điểm tốt của việc xác định các tác tử có thể là phân công nhiệm vụ cho các tác tử ngay ở nhƣ̃ng bƣớc đầu tiên. Hơn nữa, tác tử có thể đƣợc xác định các chức năng khác nhƣ là: thay mặt ngƣời sử dụng, thiết bị hoặc cơ sở dữ liệu. Điều này đƣợc thực hiện bằng các phƣơng thức của hƣớng đối tƣợng. Chúng ta sẽ sử dụng các ký pháp của UML là bộ ký pháp phổ thông nhất để mô tả.

Trong bƣớc này, các quy tắc sau đây đƣợc dùng để xác định các tác tử cơ sở[26]:

1. Thêm một loại tác tử cho một ngƣời sử dụng hay một thiết bị ngoài.

2. Thêm một loại tác tử cho các tài nguyên (bao gồm cả các phần mềm đã tồn

tại).

Trong mô hình tác tử có thể có bốn loại phần tử:

 Các kiểu tác tử: các kiểu tác tử thật sự, biểu diễn bằng các hình tròn.

 Con ngƣời: những ngƣời sẽ giao tiếp với hệ thống sau khi phát triển,

biểu diễn bằng các biểu tƣợng là các tác nhân UML.

 Tài nguyên: hệ thống bên ngoài sẽ giao tiếp với hệ thống sau khi phát

triển, biểu diễn bằng các hình chữ nhật.

 Các mối quan hệ quen biết: biểu diễn bằng các mũi tên liên kết các bản

thể của các thành phần trên, đặc tả các thành phần liên quan với nhau sẽ phải tƣơng tác bằng một số cách nào đó với nhau khi vận hành hệ thống. Lƣu ý rằng, ở bƣớc này chỉ các mối quan hệ quen biết giữa các tác tử và các tài nguyên khác hay con ngƣời mới đƣợc biểu diễn ra trong lƣợc đồ tác tử.

Cũng nên lƣu ý rằng lƣợc đồ tác tử không giống nhƣ các lƣợc đồ ca sử dụng khác trong UML. Sự khác biệt là việc làm rõ giữa con ngƣời và các hệ thống ngoài. Cách thức mà các hệ thống bên ngoài hay các hệ thống cũ giao tiếp với các tác tử đƣợc tính toán cho các hệ thống đa tác tử cũng hết sức quan trọng. Ba kỹ thuật sau đã đƣợc đƣa ra để giải quyết vấn đề này:

Sử dụng một tác tử chuyển đổi (Transducer): Bộ chuyển đổi sẽ đƣa ra một giao diện giữa một hệ thống cũ và các tác tử khác trong hệ thống. Tác tử chuyển đổi tiếp nhận các thông điệp từ các tác tử trong hệ thống (dƣới một ngôn ngữ giao tiếp tác tử nào đó) và dịch nó thành ngôn ngữ tƣơng thích với hệ thống cũ và chuyển tiếp nó tới hệ thống đó. Tƣơng tự nhƣ vậy với

chiều ngƣợc lại, tác tử chuyển đổi sẽ nhận trả lời của hệ thống cũ và làm cho nó trở lên có thể hiểu đƣợc với tác tử khác trong hệ thống. Hơn nữa phƣơng pháp bộ chuyển đổi còn đƣợc dùng cho việc giao tiếp với các tài nguyên khác nhƣ hệ thống file hay là con ngƣời.

Thêm một bao gó i ( wrapper): Một đoạn mã sẽ đƣợc thêm vào hệ thống cũ. Đoạn mã đƣợc thêm vào có thể cho phép nguồn tài nguyên có thể giao tiếp với các tác tử bằng ngôn ngữ giao tiếp của tác tử.

Viết lại mã: đây là cách thức ít đƣợc nghĩ tới nhất. Phƣơng pháp này bao gồm việc viết lại mã để bắt chiếc các thao tác và khả năng của các tài nguyên cũ nhƣng phải có khả năng giao tiếp với các tác tử bằng ngôn ngữ giao tiếp của tác tử . Chú ý rằng, đây là phƣơng pháp đƣợc chỉ đƣợc lựa chọn khi không còn sự lựa chọn nào khác.

Trong lƣợc đồ, tác tử đƣợc tạo ra ở bƣớc này. Các tác tử chuyển đổi, đƣợc coi nhƣ là giao diện giữa tác tử và các tài nguyên cũ của hệ thống. Phƣơng pháp sử dụng bộ

Các giao diện bọc ACL Bộ chuyển đổi Các nguồn tài nguyên cũ Phƣơng pháp bộ chuyển đổi Các nguồn tài nguyên cũ ACL Viết lại mã

Phƣơng pháp bọc Phƣơng pháp viết lại

ACL

Hình 3.3 Mô hình giải pháp giao tiếp với hê ̣ thống cũ

chuyển đổi là phƣơng pháp mang tính khả thi và đem lại hiệu quả lớn nhất bởi các tài nguyên cũ thƣờng ở dƣới dạng các hệ thống đóng (nhƣ một chiếc hộp đen) nên việc sửa mã là rất khó. Chúng ta phải coi các tài nguyên cũ giống nhƣ một cái hộp đen và chúng ta sẽ sử dụng một giao diện để sƣ̉ du ̣ng đƣợc các chức năng của hệ thống cũ. Trong một số trƣờng hợp, phƣơng pháp bộ bao vẫn hữu dụng hơn phƣơng pháp viết lại mã.

Công việc tiếp theo là phân lớp các tác tử đã đƣợc xác định ở phần trƣớc. Đầu tiên, phân loại chúng theo đặc trƣng, xem chúng là tĩnh hay là di động. Sau đó các tác tử có thể lại đƣợc phân lớp theo chức năng:

Tác tử giao diện: là các tác tử mà tƣơng tác với ngƣời dùng, nhận các đặc tả của ngƣời dùng và trả về kết quả. Chúng nhận đƣợc các yêu cầu của ngƣời sử dụng để hƣớng dẫn hệ thống phối hợp cùng với sự hỗ trợ của ngƣời sử dụng. Chức năng chính của các tác tử giao diện là thu thập các thông tin liên quan từ ngƣời sử dụng để khởi tạo một nhiệm vụ, và yêu cầu ngƣời sử dụng cung cấp thêm thông tin trong quá trình thực hiện.

Tác tử nhiệm vụ: là các tác tử hỗ trợ việc ra quyết định bằng cách biểu thức hoá các vấn đề, xây dựng kế hoạch và thực hiện các kế hoạch đó thông qua việc truy vấn và trao đổi thông tin với các tác tử khác. Một tác tử nhiệm vụ nhận đƣợc đặc tả của nhiệm vụ do ngƣời sử dụng cung cấp thông qua tác tử giao diện và mẫu kế hoạch mô tả các mục tiêu đó. Tác tử nhiệm vụ đƣợc chia thành 3 loại:

Tác tử quan sát: là tác tử mà liên tục điều khiển dòng thông tin và thông báo cho khách hàng của nó khi kết thúc.

Tác tử tìm kiếm: là tác tử mà thực hiện việc tìm kiếm.

Tác tử phân tích: là tác tử mà thực hiện việc kết luận các thông tin đƣợc đƣa ra.

Tác tử thông tin : là tác tử trả lời các truy vấn về một nguồn thông tin có liên quan. Tác tử này có chức năng hoạt động nhƣ quản lý danh bạ, …

e) Bước 5 - Gán trách nhiệm cho các tác tử

Ở bƣớc này, với mỗi kiểu tác tử đã đƣợc xác định, lập một danh sách các trách nhiệm ban đầu đã đƣợc tạo ra ở các bƣớc trƣớc. Tuy nhiên, các nhiệm vụ này mới chỉ đƣợc xác định bằng cách không chính thống và trực giác.

Trong bƣớc tiếp theo, mỗi loại tác tử sẽ đƣợc gán cho những trách nhiệm nào đó trong danh sách. Kết quả của quá trình này là một bảng các trách nhiệm. Ở bƣớc này, các quy tắc sau nên đƣợc áp dụng:

1. Tập các trách nhiệm là các trách nhiệm rút ra từ các ca sử dụng đƣợc phân

tích trong các bƣớc trƣớc đây.

2. Gán trách nhiệm cho các tác tử nếu trách nhiệm của chúng đã thực sự đƣợc

nhận biết một cách rõ ràng. Các tác tử khác có thể gán trách nhiệm trong các bƣớc tiếp theo.

Dƣới đây là một ví dụ về bảng trách nhiệm trong bài toán thƣơng ma ̣i điê ̣n tƣ̉:

Kiểu Tác tử Trách nhiệm

Tác tử môi giới 1.Phục vụ việc đăng ký các loại hình dịch vụ chứng khoán. 2.Đăng ký mua.

3.Cung cấp thông tin về các dịch vụ. 5.Thông báo các dịch vụ mới đƣợc đăng ký.

6.Cho phép từ chối các loại dịch vụ mà không đƣợc quan tâm. 7.Tìm kiếm, đsối chiếu các dịch vụ theo một số điều kiện nào đó. 8.Giới thiệu bên nhà cung cấp và khách hàng.

9.Xác thực thông tin của các giao dịch.

Tác tử bán 1.Hỗ trợ ngƣời dung đăng ký cung cấp dịch vụ.

Tác tử mua 1.Hỗ trợ ngƣời sử dụng đăng ký nhu cầu mua.

2.Tự động đàm phán nhằm mua đƣợc dịch vụ với giá thấp nhất có thể..

f) Bước 6 –Tách/gộp các tác tử

Mục đích của bƣớc này nhằm tối ƣu hóa hệ thống. Các tác tử đƣợc xác định ban đầu sẽ đƣợc xem xét lại để loại bỏ các tác tử không cần thiết, thêm các tác tử còn thiếu, tách gộp các tác tử đã có . Để làm điều đó, ngƣời phân tích có thể sử dụng một số các quy tắc sau:

1. Đối với nhóm nhiệm vụ hỗ trợ: những tác tử cung cấp thông tin cần phải thực hiện các trách nhiệm của họ với việc làm thế nào, ở đâu và khi nào thông tin sẽ đƣợc lƣu trữ hoặc sinh ra.

2. Đối với nhóm tìm kiếm và khai thác: làm thế nào các tác tử có thể tìm ra các tác tử khác để liên kết thông qua các mối liên hệ quen biết. Cần xây dựng cơ chế quản lý việc định danh cho các tác tử sao cho dễ dàng cho các thao tác nhƣ: tìm kiếm, … Trƣờng hợp đơn giản nhất là việc tìm kiếm các tác tử có thể hoàn thành bằng cách tìm theo tên thông thƣờng. Lấy ví dụ, trong bài

toán giao dịch thƣơng ma ̣i điê ̣n tƣ̉, tác tử thay mặt cho ngƣời sử dụng, sẽ sử

dụng tên chính là mã của ngƣời sử dụng đó. Theo cách này thì các tác tử môi giới có thể nhận dạng ra các tác tử khác để gửi các lời chào hàng tới các tác tử đại diện cho ngƣời có nhu cầu muốn mua. Việc nhận dạng theo tên rất đơn giản và có hiệu quả nhƣng nó có một số giới hạn:

A) Tên của tác tử phải là duy nhất trong toàn bộ hệ thống. Do đó, quy

luật dựa trên mã của ngƣời sử dụng thì có thể đƣợc chấp nhận nhƣng nếu sử dụng tên thật thì có thể có vấn đề trùng lặp.

B) Những tác tử sẽ tham gia các tƣơng tác thông thƣờng phải đƣợc biết rõ.

3. Với nhóm chức năng quản lý và điều hành: yêu cầu hệ thống phải lƣu vết các tác tử đã tồn tại, việc khởi động hoặc tạm dừng của các tác tử .Có thể phải thêm các loại tác tử khác vào để quản lý các vấn đề phát sinh nhƣ lỗi của các tác tử điều hành, lƣu trữ chúng. Việc tạo các tác tử hỗ trợ phải dựa

trên một số các điều kiện cần thiết nào đấy. Trong bài toán giao dịch

thƣơng ma ̣i điê ̣n tƣ̉ đơn giản thì chỉ cần thêm vào tác tử trang vàng cho các chức năng quản lý và điều hành.

Kèm theo là bảng trách nhiệm cũng phải đƣợc cập nhật mới.

Kiểu Tác tử Trách nhiệm

Tác tử môi giới 1.Phục vụ việc đăng ký các loại hình dịch vụ chứng khoán. 2.Đăng ký mua.

3.Cung cấp thông tin về các dịch vụ. 5.Thông báo các dịch vụ mới đƣợc đăng ký.

6.Cho phép từ chối các loại dịch vụ mà không đƣợc quan tâm. 7.Tìm kiếm, đối chiếu các dịch vụ theo một số điều kiện nào đó. 8.Giới thiệu bên nhà cung cấp và khách hàng.

9.Xác thực thông tin của các giao dịch.

Tác tử bán 1.Hỗ trợ ngƣời dung đăng ký cung cấp dịch vụ.

2. Đàm phán nhằm mục đích bán đƣợc dịch vụ với giá cao. Tác tử mua 1.Hỗ trợ ngƣời sử dụng đăng ký nhu cầu mua.

2.Tự động đàm phán nhằm mua đƣợc dịch vụ với giá thấp nhất có thể..

Tác tử trang vàng 1. Trả lời thông tin về nơi cƣ trú của các tác tử khi tác tử môi giớ i

Một phần của tài liệu PHÂN TÍCH THIẾT KẾ HỆ ĐA TÁC TỬ HƯỚNG TRÊN NỀN TẢNG PHÁT TRIỂN JADE.PDF (Trang 40 -40 )

×