1. Trang chủ
  2. » Công Nghệ Thông Tin

Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets

61 252 1

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 61
Dung lượng 2,25 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Có rất nhiều phương pháp đánh giá hiệu năng của hệ thống, trong đó phương pháp đánh giá thông qua mô hình mô phỏng là một phương pháp có thể áp dụng để đánh giá hiệu năng cho các hệ thốn

Trang 1

i

LỜI CAM ĐOAN

Tôi cam đoan đây là công trình nghiên cứu của riêng tôi trong đó có sự giúp đỡ rất lớn của thầy hướng dẫn

Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được

ai công bố trong bất kỳ công trình nào khác

Trong luận văn, tôi có tham khảo đến một số tài liệu đã được liệt kê tại phần Tài liệu tham khảo ở cuối luận văn

Hà Nội, ngày 22 tháng 11 năm 2016

Tác giả

Ngô Quang Minh

Trang 2

ii

LỜI CẢM ƠN

Trước tiên, tôi xin chân thành cảm ơn PGS.TS Huỳnh Quyết Thắng

đã dành thời gian quý báu, tận tình hướng dẫn chỉ bảo, góp ý cho tôi trong suốt quá trình thực hiện luận văn tốt nghiệp

Tôi xin được cảm ơn sự giúp đỡ nhiệt tình của các Thầy giáo, Cô giáo viện Đào tạo sau đại học - Đại Học Bách Khoa Hà Nội Đặc biệt, tôi xin được bày tỏ lòng biết ơn sâu sắc tới các Thầy giáo, Cô giáo đã tham gia giảng dạy tôi trong quá trình học tập tại Đại học Các thầy đã tận tình giảng dạy, truyền đạt kiến thức, tạo tiền đề cho tôi hoàn thành luận văn

Cuối cùng, tôi xin chân thành cảm ơn các bạn bè, đồng nghiệp và nhất

là gia đình tôi đã quan tâm và tạo mọi điều kiện tốt nhất, động viên, cổ vũ tôi trong suốt quá trình học tập và nghiên cứu để hoàn thành tốt luận văn tốt nghiệp này

Xin trân trọng cảm ơn!

Hà Nội, ngày 22 tháng 11 năm 2016

Tác giả

Ngô Quang Minh

Trang 3

iii

MỤC LỤC

MỤC LỤC iii

DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT vi

DANH MỤC CÁC BẢNG vii

DANH MỤC CÁC HÌNH viii

MỞ ĐẦU 1

CHƯƠNG 1 TỔNG QUAN VỀ ĐÁNH GIÁ HIỆU NĂNG 3

1.1 Khái niệm đánh giá hiệu năng 3

1.1.1.Vai trò của đánh giá hiệu năng 3

1.1.2 Các thuật ngữ đánh giá hiệu năng 3

1.2 Các bước thực hiện trong đánh giá hiệu năng 4

1.3 Các phương pháp đánh giá hiệu năng 5

1.3.1 Phương pháp đo hiệu năng 5

1.3.2 Phương pháp mô hình hóa phân tích 6

1.3.3 Phương pháp mô phỏng 6

1.3.4 So sánh các phương pháp đánh giá hiệu năng 6

1.4 Các phương pháp mô hình hóa đánh giá hiệu năng 9

1.4.1 Mô hình mạng hàng đợi 9

1.4.2 Mô hình mạng Petri Nets 10

1.4.3 Các mô hình lai (Hybrid Models) 11

1.4.4 Đánh giá nhận xét chung 12

1.5 Chuyển đổi từ UML State Machine thành mạng SPN 13

1.6 Đánh giá hiệu năng hệ thống Share Memory 13

1.6.1 Khái niệm Share Memory 13

1.6.2 Hiệu năng của các hệ thống Share Memory 13

1.7 Kết luận chương 1 13

CHƯƠNG 2 PHƯƠNG PHÁP CHUYỂN ĐỔI UML STATE MACHINES THÀNH MẠNG SPN 14

2.1 Tổng quan về UML State Machine 14

2.1.1 Trạng thái và sự biển đổi trạng thái (State transition) 15

2.1.2 Biểu đồ trạng thái: 17

Trang 4

iv

2.1.3 Nhận biết trạng thái và sự kiện 19

2.2 Trạng thái cơ bản của chuyển đổi 19

2.3 Trạng thái giả lập 22

2.3.1 Khởi đầu 22

2.3.2 Trạng thái nhánh 22

2.4 Kết luận chương 2 23

CHƯƠNG 3 PHƯƠNG PHÁP ĐÁNH GIÁ HIỆU NĂNG SỬ DỤNG MẠNG STOCHASTIC PETRI NETS 24

3.1 Khái niệm mạng SPN 24

3.2 Các đặc tính của mạng SPN 26

3.2.1 Thực hiện tuần tự 26

3.2.2 Đồng bộ 26

3.2.3 Kết hợp 26

3.2.4 Đụng độ 27

3.2.5 Tương tranh 27

3.2.6 Hỗn độn 28

3.3 Mô phỏng hệ thống mạng SPN 28

3.3.1 SPN 28

3.3.2 Các bước mô phỏng hệ thống 31

3.4 Xây dựng cây trạng thái 31

3.5 Phân tích đặc tính hành vi của mạng SPN 33

3.5.1 Tính đạt được (reachability) 33

3.5.2 Tính an toàn (safety) 34

3.5.3 Tính tích cực (liveness) 35

3.5.4 Tính hữu hạn (boundness) 35

3.5.5 Tính bảo toàn (conservative) 36

3.5.6 Tính phủ (coverability) 36

3.5.7 Tính cố chấp (persistence) 37

3.6 Phân tích định lượng 37

3.7 Kết luận chương 3 38

CHƯƠNG 4 ÁP DỤNG VÀ THỬ NGHIỆM ĐÁNH GIÁ HIỆU NĂNG HỆ THỐNG SHARE MEMORY 39

4.1 Giới thiệu hệ thống Share Memory 39

Trang 5

v

4.1.1 Chức năng chính của hệ thống Share Memory 39

4.1.2 Mô hình UML State Machine thành SPN 40

4.2 Thực nghiệm áp dụng đánh giá hiệu năng 41

4.2.1 Các bước tiến hành 41

4.2.2 Kết quả và đánh giá 42

4.3 Kết luận chương 4 49

KẾT LUẬN VÀ KIẾN NGHỊ 51

A Kết luận 51

B Kiến nghị 51

C Hướng phát triển của đề tài 52

TÀI LIỆU THAM KHẢO 53

Trang 6

vi

DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT

WFQ Weighted Fair Queue Hàng đợi cân bằng có trọng số

SPT Schedulability, Performance,

Time Lập lịch, thực hiện, thời gian SPN Stochastic Petri Nets

UML Unified Modeling Language Ngôn ngữ mô hình hóa thống nhất

Trang 7

vii

DANH MỤC CÁC BẢNG

Bảng 1 Những tiêu chí để lựa chọn kỹ thuật đánh giá 7

Bảng 2 Một số biểu diễn đặc trƣng các vị trí và chuyển tiếp của PN 25

Bảng 3 Kết quả tổng hợp 3 lần đánh giá theo kịch bản 1 44

Bảng 4 Kết quả tổng hợp 5 lần đánh giá theo kịch bản 2 49

Trang 8

viii

DANH MỤC CÁC HÌNH

Hình 1.1 Mô hình hàng đợi 10

Hình 2.1 Một ví dụ về biểu đồ trạng thái 14

Hình 2.2 Trạng thái Login 16

Hình 2.3 Các ký hiệu UML thể hiện bắt đầu, kết thúc, sự kiện và trạng thái của một đối tượng 17

Hình 2.4 Biểu đồ trạng thái thực hiện hoá đơn 17

Hình 2.5 Các ngăn Tên, Biến trạng thái và hành động 17

Hình 2.6 Biến đổi trạng thái không có sự kiện từ ngoài 18

Hình 2.7 Trạng thái biến đổi cơ bản I 20

Hình 2.8 Trạng thái biến đổi cơ bản II 21

Hình 2.9 Trạng thái khỏi đầu 22

Hình 2.10 Trạng thái nhánh 23

Hình 3.1 Đặc tính tuần tự của PN 26

Hình 3.2 Đặc tính đồng bộ của PN 26

Hình 3.3 PN thể hiện sự kết hợp các thẻ từ các vị trí vào của chuyển tiếp t 1 27

Hình 3.4 PN thể hiện sự đụng độ của các chuyển tiếp t 1, t 2 27

Hình 3.5 Đặc tính tương tranh của PN 27

Hình 3.6 Đặc tính hỗn độn của PN 28

Hình 3.7 Ma trận đặc trung Q từ cây trạng thái 33

Hình 3.8 Các đánh dấu nhờ đạt được nhờ lần lượt kích hoạt các chuyển tiếp t 1 và t 2 34

Hình 3.9 Đánh dấu M 0 là không an toàn 35

Hình 4.1 Hệ thống Share Memory 39

Hình 4.2 Mô hình UML State Machine sang SPN của Process 1 40

Hình 4.3 Mô hình UML State Machine sang SPN của Process 2 40

Hình 4.4 Mô hình SPN của hệ thống Share Memory 41

Trang 9

1

MỞ ĐẦU

Ngày nay, cùng với sự phát triển của vượt bậc của ngành công nghệ thông tin, các nhà nghiên cứu đã cải tiến quy trình phần mềm và nhận thấy rằng việc đánh giá hiệu năng của hệ thống được coi là một giai đoạn không thể thiếu trong quá trình phát triển phần mềm Đánh giá hiệu năng là một trong các yếu tố cơ bản quyết định đến sự thành công hay thất bại của một dự án

Có rất nhiều phương pháp đánh giá hiệu năng của hệ thống, trong đó phương pháp đánh giá thông qua mô hình mô phỏng là một phương pháp có thể áp dụng để đánh giá hiệu năng cho các hệ thống lớn có luồng xử lý phức tạp Tuy nhiên với sự tăng trưởng về nhu cầu sử dụng và khả năng triển khai dịch vụ hỗ trợ trực tuyến gia tăng, vì vậy, việc đánh giá hiệu năng của hệ thống là vô cùng cần thiết và không thể thiếu trong quá trình phát phần mềm

Đó là lý do em đã chọn đề tài: “Phương pháp đánh giá hiệu năng hệ thống

sử dụng UML State Machine và Stochastic Petri Nets” để làm luận văn tốt nghiệp

với mục đích hiểu được mô hình UML State Machine và Stochastic Petri Nets trong việc đánh giá hiệu năng cũng như khả năng áp dụng vào thực tiễn

1 Mục đích nghiên cứu

- Tìm hiểu tổng quan về đánh giá hiệu năng hệ thống

- Tìm hiểu phương pháp chuyển đổi từ UML State Machine sang SPN

- Nghiên cứu phương pháp đánh giá hiệu năng sử dụng mạng Stochastic Petri Nets

- Thử nghiệm áp dụng trong bài toán Share memory

2 Đối tƣợng và phạm vi nghiên cứu

Trong khuôn khổ luận văn thuộc loại tìm hiểu lý thuyết để vận dụng, em chỉ giới hạn nghiên cứu các vấn đề sau:

- Nghiên cứu mô hình mạng Stochastic Petri Nets trong đánh giá hiệu năng

- Áp dụng phướng pháp đánh giá hiệu năng cho hệ thống Share Memory sử dụng công cụ mô phỏng TimeNet

3 Bố cục luận văn

Chương 1: Tổng quan về đánh giá hiệu năng: Chương này trình bày các khái niệm, tổng quát các phương pháp đánh giá hiệu năng hệ thống

Trang 10

2

Chương 2: Phương pháp chuyển đổi UML State Machine thành mạng SPN

Chương 3: Phương pháp đánh giá hiệu năng sử dụng mạng Stochastic Petri Nets Trình bày các cơ sở của mạng Petri Nets

Chương 4: Áp dụng và thử nghiệm đánh giá hiệu năng hệ thống Share Memory

Trang 11

3

CHƯƠNG 1 TỔNG QUAN VỀ ĐÁNH GIÁ HIỆU NĂNG

Đánh giá hiệu năng của hệ thống là một trong những nhiệm vụ cần thiết để đưa ra những nhận xét, kết luận về tốc độ tính toán, tính hiệu quả của toàn bộ hệ thống Trong chương này trình bày các khái niệm cơ bản liên quan đến kỹ thuật đánh giá hiệu năng hệ thống, đặc biệt là các phương pháp và các mô hình đánh giá hiệu năng

1.1 Khái niệm đánh giá hiệu năng

Đánh giá hiệu năng là sử dụng phần mềm chuyên dụng trên một máy tính đơn hay cả một hệ thống máy tính, từ việc phân tích thời gian chạy chương trình hoặc những kết quả thu được, từ đó người quản trị rút ra những kết luận về tốc độ tính toán, tốc độ truyền thông và khả năng truy cập bộ nhớ Sau đó đưa ra kết luận

về hiệu năng thực của hệ thống

Một cách định nghĩa khác của đánh giá hiệu năng theo [4] đánh giá hiệu năng là dựa vào việc xác định các thông số như: số lượng active, số lượng session của một hệ thống, thời gian phản hồi (repsonsiveness), thông lượng (throughput), mức độ tin cậy (reliability) hoặc khả năng mở rộng (scalability) của hệ thống theo khối lượng công việc (workload)

1.1.1.Vai trò của đánh giá hiệu năng

Đánh giá hiệu năng là hoạt động cần thiết cho việc phát triển những giải pháp tối ưu hóa hiệu năng cho hệ thống Đánh giá hiệu năng giúp chúng ta tránh được các tình huống không lường trước khi triển khai ứng dụng trong môi trường thực tế

1.1.2 Các thuật ngữ đánh giá hiệu năng

Theo [8] em đã chọn lọc và tập hợp một số thuật ngữ hay được sử dụng trong đánh giá hiệu năng:

- Thời gian nghĩ (think time): là khoảng thời gian người sử dụng nắm bắt nội dung của trang web hoặc là thời gian người dùng thực hiện một hành động tương tác với hệ thống như nhấp vào một đường dẫn, nút, v.v…

- Tải người sử dụng đồng thời (simultaneous user load): là tải nhiều người đồng thời cùng sử dụng ứng dụng, tại cùng một thời điểm bất kỳ mỗi người thực hiện một tương tác khác nhau

Trang 12

4

- Tải người sử dụng đồng thời thực hiện một hành động (concurrent user load): là tải nhiều người đồng thời cùng sử dụng ứng dụng và thực hiện cùng một hoạt động tại bất kỳ thời điểm nào

Yêu cầu/mục đích hiệu năng (performance requirements/goals): là định lượng đưa ra tiêu chí cho rằng hiệu năng của hệ thống là tốt Yêu cầu hiệu năng của một ứng dụng được thể hiện trong thời gian phản hồi, số lượt truy cập trong 1 giây (hits), số giao địch trong 1 giây, v.v…

Tải công việc (workload): là tải người sử dụng hệ thống trong thời gian thực khi người sử dụng đang truy cập hoặc trong khi kiểm thử hiệu năng

Hit: là yêu cầu gửi về máy chủ để truy cập vào một trang web hoặc một tập tin hoặc một ảnh từ máy chủ web

Thời gian phản hồi (response time): là thời gian phục vụ hoặc xử lý để phản hồi lại yêu cầu Thời gian phản hồi được tính từ khi trình duyệt web gửi yêu cầu tới máy chủ web cho tới khi trình duyệt web nhận được những byte phản hồi đầu tiên

từ máy chủ

Thông lượng (throughput): là tổng dữ liệu (bytes) được truyền từ máy chủ tới máy khách để phục vụ yêu cầu người dùng

1.2 Các bước thực hiện trong đánh giá hiệu năng

Các bước chung cho tất cả dự án đánh giá hiệu năng mà có thể giúp tránh được các lỗi xảy ra trong quá trình đánh giá [8]

- Bước 1: Xác định mục tiêu và định nghĩa hệ thống: là xác định mục tiêu của việc nghiên cứu và định nghĩa xem cái gì tạo nên hệ thống bằng cách phác họa các giới hạn của hệ thống

- Bước 2: Lập danh sách các dịch vụ và kết quả nhận được: Mỗi một hệ thống cung cấp một tập hợp các dịch vụ Danh sách của dịch vụ và kết quả khả thi sẽ hữu ích sau này trong việc chọn thông số và tải làm việc đúng

- Bước 3: Lựa chọn các thông số đo: là lựa chọn các tiêu chuẩn để so sánh hiệu năng, chúng được gọi là các thông số đo Nhìn chung, các thông số này liên hệ với tốc độ, độ chính xác, và ích lợi của dịch vụ

Trang 13

5

- Bước 4: Lập danh sách các thông số: là tạo danh sách tất cả các thông số ảnh hưởng tới hiệu năng Danh sách này có thể được phân chia thành các thông số hệ thống và các thông số tải làm việc

- Bước 5: Lựa chọn các thông số để nghiên cứu: được chia thành 2 phần: các thông số sẽ được thay đổi trong quá trình đánh giá và các thông số không thay đổi Những thông số được thay đổi gọi là thừa số và những giá trị của chúng được gọi là tham số

1.3 Các phương pháp đánh giá hiệu năng

Có nhiều phương pháp đánh giá hiệu năng, có thể chia chúng làm ba loại: mô hình hóa phân tích (Analytic Models), mô hình mô phỏng (Simulation Models) và

Đo hiệu năng (Measurement) [5]

1.3.1 Phương pháp đo hiệu năng

Khi thực hiện đo thực tế, người đo phải dựng ra được các kịch bản cần đo từ

đó tạo ra những điều kiện giống với kịch bản thực tế và sử dụng các công cụ đo như phần mềm, thiết bị đo để thu nhận các kết quả thực tế từ hoạt động của hệ thống theo kịch bản

Đo hiệu năng không chỉ quan trọng trong các giai đoạn triển khai thực hiện

và tích hợp hệ thống mà còn cả trong các giai đoạn lắp đặt và vận hành hệ thống Bởi vì sau khi lắp đặt và đưa vào sử dụng, mỗi một hệ thống cụ thể sẽ có một tải hệ thống và các độ đo hiệu năng được quan tâm riêng của nó, cho nên sau khi lắp đặt, người ta thường phải điều chỉnh cấu hình cho phù hợp Các tham số cấu hình sẽ được chọn sau khi các phép đo hiệu năng cho thấy các tham số cấu hình này làm cho hệ thống đạt được hiệu năng tốt nhất

Trong thực tế, mọi người đều thừa nhận tầm quan trọng của việc đo và đánh giá hiệu năng Chúng ta có thể thấy rõ điều này qua việc hầu như tất cả các hệ thống đều tích hợp bên trong nó các công cụ đo và đánh giá hiệu năng nhờ đó có thể đo hiệu năng bất cứ lúc nào trong suốt vòng đời của hệ thống

Thông thường với kỹ thuật đo thực tế cho chúng ta kết quả với độ chính xác rất cao, tuy nhiên việc đầu tư quá lớn trước khi biết kết quả hoạt động nhiều khi gây

ra sự lãng phí vì vậy giải pháp đo thực tế chỉ được sử dụng để giám sát hoạt động

Để đo được giá trị hiệu năng, quan trọng nhất là lấy thông tin chính xác về hệ thống

Trang 14

6

Hiện nay phổ biến có 3 cách lấy thông tin [5]:

- Truy vấn các nút mạng để lấy trực tiếp thông tin đang lưu trữ

- Theo dõi luồng thông tin thực tế trên hệ thống

- Xây dựng kịch bản với dữ liệu thử nghiệm để đo hệ thống

1.3.2 Phương pháp mô hình hóa phân tích

Việc sử dụng các kỹ thuật phân tích để tính toán hiệu năng hệ thống đã được thực hiện từ lâu, trong đó các công cụ toán học đã được sử dụng rất linh hoạt và đa dạng như xác suất thống kê, đồ thị, quy hoạch, luồng, để giải quyết nhiều vấn đề trong hiệu năng

Ưu điểm chính của mô hình hóa phân tích là có thể xác định các ngưỡng giá trị của hệ thống qua việc xác định mối tương quan giữa các yếu tố trước khi tồn tại

hệ thống Nhưng khi áp dụng trong thực tế, việc mô tả đầy đủ các yếu tố đầu vào cho bài toán là cực kỳ khó khăn do vậy kết quả của phương pháp này còn nhiều hạn chế

Việc mô phỏng hệ thống đòi hỏi phải mô tả chính xác, chân thực tính năng,

kỹ thuật, yếu tố ràng buộc giữa các nhân tố tham gia và ảnh hưởng tới hệ thống trong thực tế khi xây dựng Như vậy, để kết quả chính xác đòi hỏi công tác mô tả kịch bản phải rất chuẩn xác

1.3.4 So sánh các phương pháp đánh giá hiệu năng

STT Tiêu chí đánh giá Mô hình phân tích Mô Phỏng Đo đạc

1 Giai đoạn Mọi giai đoạn Mọi giai đoạn Sau thiết kế

Trang 15

7

Bảng 1 Những tiêu chí để lựa chọn kỹ thuật đánh giá

Vấn đề tiếp theo cần cân nhắc đó là thời gian sử dụng cho công việc đánh giá Trong hầu hết các trường hợp, các kết quả được yêu cầu từ ngày hôm trước (thời gian đánh giá ngắn) Nếu đúng như vậy thì mô hình hóa phân tích là sự lựa chọn duy nhất Các phương pháp mô phỏng cần một thời gian dài, các phương pháp

đo đạc thường mất nhiều thời gian hơn mô hình hóa phân tích nhưng không lâu như

mô phỏng Theo ý nghĩa của định luật Murphy thì phương pháp đo đạc được sử dụng thường xuyên hơn hai phương pháp còn lại Kết quả là, thời gian cần thiết dành cho đo đạc biến động nhiều nhất trong ba kỹ thuật

Điểm quan tâm tiếp theo là tính sẵn sàng của công cụ Các loại công cụ bao gồm: các kỹ năng mô hình hóa, các ngôn ngữ mô phỏng, và các thiết bị đo đạc Nhiều nhà phân tích hiệu năng rất thành thạo và khéo léo trong mô hình hóa Họ không cần sử dụng tới bất cứ hệ thống thật đắt tiền nào Những người khác không thành thạo các lý thuyết hàng đợi thì lại quan tâm hơn đến đo đạc và mô phỏng Thiếu kiến thức về các ngôn ngữ và kỹ thuật mô phỏng khiến nhiều nhà phân tích

xa rời các công cụ mô phỏng hữu dụng

Mức độ chính xác đòi hỏi cũng là một mối quan tâm khác Nhìn chung, mô hình hóa phân tích yêu cầu nhiều sự đơn giản hóa và giả thiết đến nỗi nếu các kết quả trở nên chính xác thì ngay cả các nhà phân tích cũng phải ngạc nhiên Các phương pháp mô phỏng có thể kết hợp nhiều chi tiết, yếu tố hơn và yêu cầu ít giả thiết hơn là mô hình hóa phân tích và do đó thường gần hơn với thực tế Các phương pháp đo đạc mặc dù nghe có vẻ gần thực tế nhất nhưng kết quả lại có thể thiếu chính xác, đơn giản vì có nhiều tham số môi trường tác động đến đối với từng thử nghiệm, như là cấu hình hệ thống, loại tải làm việc, và thời gian đo đạc Các tham số cũng có thể không thể hiện khoảng làm việc thay đổi trong các hệ thống thực tế Do vậy tính chính xác của kết quả đo đạc thu được có thể thay đổi từ cao đến không có gì

Trang 16

8

Mục đích của công việc nghiên cứu hiệu năng là vừa để so sánh các phương

án khác nhau vừa để tìm ra giá trị tham số tối ưu Các mô hình phân tích thường cung cấp một cái nhìn tốt nhất về tác dụng của các tham số khác nhau và sự tương tác giữa chúng Với các phương pháp mô phỏng, có thể tìm được khoảng giá trị tham số cho tổ hợp tối ưu, nhưng thường không thể hiện được rõ ràng sự tương xứng giữa tham số này với tham số khác Các phương pháp đo đạc là kỹ thuật ít thể hiện được tính tương xứng giữa các tham số nhất Thật không dễ khi khẳng định rằng hiệu năng được cải thiện là kết quả của một vài sự thay đổi ngẫu nhiên về môi trường hoặc hiệu chỉnh một vài tham số nhất định

Chi phí cấp cho dự án cũng là một yếu tố quan trọng Đo đạc đòi hỏi phải có thiết bị thật, dụng cụ đo đạc và thời gian Đây chính là kỹ thuật tốn kém nhất rong 3

kỹ thuật đã nêu Chi phí đi kèm với khả năng dễ dàng thay đổi cấu hình, thường là lí

do để phát triển các phương pháp mô phỏng cho các hệ thống đắt tiền Mô hình hóa phân tích chỉ đòi hỏi giấy và bút chì (cộng với thời gian của nhà phân tích) nên có thể xem như là kỹ thuật rẻ nhất

Tính bán được của kết quả đánh giá có thể là lý lẽ quan trọng khi chọn xem xét các chi phí, lao động của phương pháp đo đạc Và kết quả đó dễ được thuyết phục hơn nếu nó được thực hiện với hệ thống thực Nhiều người hoài nghi về các kết quả phân tích đơn giản vì họ không hiểu công nghệ thực hiện hoặc kết quả cuối cùng Trong thực tế, người phát triển các kỹ thuật mô hình hóa phân tích mới thường kiểm chứng, xác nhận chúng bằng cách sử dụng các phương pháp mô phỏng hoặc đo lường thực sự Đôi khi việc sử dụng hai hay nhiều kỹ thuật đồng thời mang lại nhiều lợi ích Ví dụ, bạn có thể sử dụng mô phỏng và mô hình hóa phân tích cùng nhau để kiểm tra và xác nhận kết quả riêng của từng phương pháp Cho đến khi chưa chứng minh được tội lỗi, mọi người đều được xem là vô tội, nghĩa là cho đến khi chưa được xác nhận kiểm chứng thì mọi kết quả đánh giá đều đáng nghi ngờ

Phương pháp đo đạc dễ bị mắc các lỗi khi thí nghiệm hoặc các sai sót hơn là hai kỹ thuật kia Yêu cầu duy nhất của phép xác minh là kết quả phải không trái với trực quan mong đợi Phương pháp xác minh như thế gọi là trực giác của những

Trang 17

đó để nghiên cứu hiệu năng của thệ thống trong khoảng đó Điều này làm giảm số trường hợp mà phép mô phỏng cần xét đến và dẫn đến việc sử dụng tài nguyên hiệu quả hơn

1.4 Các phương pháp mô hình hóa đánh giá hiệu năng

1.4.1 Mô hình mạng hàng đợi

Một mạng hàng đợi là một đồ thị có hướng bao gồm các nút là các hàng đợi, thường gọi là các trung tâm dịch vụ, biểu diễn mô hình của các tài nguyên của hệ thống Các khách hàng trong hàng đợi này là các tác vụ trong hệ thống, tức là các tiến trình có yêu cầu cạnh tranh tài nguyên trong hệ thống ấy Các cung của mạng biểu diễn cấu trúc tôpo của hệ thống, nó xác định các đường đi có thể của khách hàng trong hệ thống Phụ thuộc vào yêu cầu về tài nguyên, khách hàng phải chờ đợi trong các hàng đợi Trạng thái của hệ thống được biểu diễn bằng số lượng khách hàng đang có ở mỗi hàng đợi Trong mạng có thể có nhiều loại khách hàng mỗi loại

có đặc trưng riêng Trong trường hợp này, trạng thái của mạng là số lượng khách hàng thuộc mỗi loại ở trong mỗi hàng đợi

Có nhiều loại mạng hàng đợi, ta có thể phân loại theo cấu trúc của mạng: như

có một hay nhiều máy chủ, hàng đợi có vùng đệm vô hạn hay hữu hạn… Cũng có thể phân biệt các mạng xếp hàng bằng các phân phối xác suất của khách hàng trong

hệ thống, hay phân biệt tính chất đóng và mở của nó

Trang 18

10

Hình 1.1 Mô hình hàng đợi

Các thông số hiệu năng tính toán được từ mạng hàng đợi khá phong phú, thường là các thông số định lượng như: thời gian phục vụ của server, độ tận dụng các tài nguyên hệ thống, thông lượng, tải trọng…

Có một lớp lớn các mạng hàng đợi đơn giản và có giải thích tính toán hiệu quả Chúng cho phép đo hiệu năng được suy diễn mà không cần phải xử lý các chuỗi Markov Giải các mô hình này, thường được gọi là giải pháp dạng sản xuất, bằng cách phân tích riêng biệt các hàng đợi riêng biệt trong một hệ thống Nhờ giải pháp này, người ta đã công bố các thuật toán đơn giản để tính toán hầu hết các độ

đo hiệu năng trực tiếp từ các thống số của mạng hàng đợi

1.4.2 Mô hình mạng Petri Nets

Nguyên lý của mạng Petri được Carl Adam Petri đưa ra lần đầu tiên vào năm

1962, ở Đức Đây là một công cụ mô hình hoá bằng đồ thị và toán học

Các bước của phương pháp [12]:

Bước 1: Mô phỏng hệ thống thành một SPN

Bước 2: Xây dựng cây trạng thái của hệ thống thông qua việc xây

dựng tập hình trạng của SPN

Bước 3: Tiến hành phân tích hiệu năng định tính

Bước 4: Trên cơ sở cây trạng thái, xây dựng chuỗi Markov thời gian liên

tục (Continuous Time Markov Chain - CTMC) đại diện cho hệ thống

Bước 5: Tiến hành phân tích hiệu năng định lượng

Bước 6: Từ kết quả đánh giá hiệu năng tiến hành xây dựng hệ thống

Trang 19

11

Một mạng Petri là một đồ thị [7], trong đó có 2 loại nút là các trạm (các trạm thực hiện giao dịch) và các giao dịch Cung của đồ thị biểu diễn quan hệ giữa các giao dịch và các trạm Một cung được gọi là cung vào nếu nó nối các trạm với các giao dịch và được gọi là cung ra nếu nó bắt đầu ở một giao dịch và kết thúc ở một trạm Trong mỗi trạm, có thể có các thẻ bài, biểu diễn tài nguyên do trạm đó cung cấp

Mạng Petri là một công cụ hứa hẹn để mô tả và nghiên cứu các hệ thống có đặc trưng không đồng bộ, hệ có tương tranh, hệ phân tán, hệ song song, hệ không đơn định và hệ ngẫu nhiên Có thể sử dụng mạng Petri làm công cụ biểu diễn trực quan quá trình truyền thông của các hệ thống này, giống như các sơ đồ luồng dữ liệu, sơ đồ khối và sơ đồ mạng Trong khi đó, các thẻ bài được sử dụng trong mạng của nó để mô phỏng hoạt động và tính tương tranh của hệ và có thể sử dụng nó làm công cụ toán học để thiết lập các phương trình trạng thái, các phương trình đại số và các mô hình toán học khác điều khiển cách hoạt động của hệ thống

Các loại mạng Petri có thông số thời gian (Timed Petri Net) kể trên hiện đang được sử dụng khá rộng rãi Các thông số hiệu năng đo được bằng mạng Petri gồm cả các thông số định tính và định lượng như: phát hiện các nút cổ chai, phát hiện các giới hạn, thời gian phục vụ trung bình của hệ thống

1.4.3 Các mô hình lai (Hybrid Models)

Các kỹ thuật mô hình hoá lai, tức là các kỹ thuật phối hợp hai hay nhiều hình thức mô hình hoá được sử dụng để tổ hợp các kỹ thuật hiệu quả mà không chính xác

ví dụ kỹ thuật dùng mô hình đồ thị và các kỹ thuật ngược lại, chính xác nhưng tính toán khó khăn, như mạng Petri chẳng hạn để thu được một mô hình lai có ưu điểm của cả hai, đó là tính toán đủ đơn giản và kết quả là chấp nhận được

Thông thường, các kỹ thuật lai phối hợp các mô hình thực thể và mô hình hoạt động là đáng quan tâm nhất Cụ thể là, các kỹ thuật này thường sử dụng một số dạng ngôn ngữ đồ thị để mô hình hoá các khía cạnh có liên quan của chương trình song song (mô hình hoá hoạt động) và mạng hàng đợi để mô hình hoá kiến trúc phần cứng ở phía dưới (mô hình hoá thực thể)

Hiện nay, có một số kỹ thuật lai đã được giới thiệu và sử dụng Trong đó, mô hình PNiQ (Petri Nets including Queue Network) được sử dụng khá rộng rãi Mô

Trang 20

12

hình này sử dụng các ký pháp của mạng hàng đợi để mô hình hoá các trạm trong mạng Petri, còn phân tích theo kỹ thuật phân tích mạng Petri Ưu điểm của mô hình này là giảm được độ phức tạp của mạng Petri trong khi các đánh giá thực nghiệm cho thấy rằng, độ chính xác của mạng là không đổi

1.4.4 Đánh giá nhận xét chung

Trong các mô hình được trình bày ở trên, mô hình mạng hàng đợi là đơn giản

và hiệu quả nhất Ưu điểm của nó là nó đánh giá nhiều thông số hiệu năng rất linh hoạt, hầu hết lại là các thông số định lượng nên rất phù hợp để đánh giá so sánh các

hệ thống khác nhau Mô hình này lại đã được nghiên cứu từ khá lâu do đó, các lý thuyết, kỹ thuật và giải thuật có liên quan đều đã được phát triển khá chuẩn, tạo được các sơ đồ thao tác mô hình hoá đơn giản, thuận lợi, dễ dàng tự động hoá Do vậy, mạng hàng đợi là mô hình được ứng dụng nhiều nhất trong thực tế, trong hầu hết các bài toán thiết kế mạng Nhưng nhược điểm của nó là không hiệu quả khi mô hình các hệ thống xử lý phức tạp như các luồng điều khiển và dữ liệu có phụ thuộc và/hoặc với nhau… Do đó, hướng phát triển trong tương lai đối với mạng hàng đợi

là tích hợp nó vào mạng Petri Nets, nhằm tận dụng được các ưu điểm kể trên

Mạng Petri có khả năng mô hình các hệ thống ở cấp độ phức tạp cao, thực hiện các phân tích đặc tính hành vi và định lượng đáng tin cậy Các thông số định lượng hiệu năng có kết quả rất chính xác Ưu điểm này làm cho mạng Petri được các nhà nghiên cứu quan tâm Vấn đề hiện tại trong khả năng ứng dụng rộng rãi của mạng Petri là cần xây dựng được các thuật toán hiệu quả để giải mô hình này mà không cần tính toán phức tạp Việc giảm kích thước của mô hình cũng đang được lưu ý Mặt khác, mô hình khá cồng kềnh, cần phải được tinh chỉnh cho gọn

Mô hình lai là việc kết hợp các mô hình khác nhau để tận dụng triệt để ưu điểm của từng loại mô hình Nhưng nhược điểm các mô hình đơn khó có thể biểu diễn được đầy đủ yêu cầu phân tích hiệu năng, kích thước mô hình sẽ rất lớn, liên kết các mô hình sẽ rất phức tạp Hiện nay mô hình lai đang trong giai đoạn thử nghiên cứu, thử nghiệm

Trong phạm vi đề tài của luận văn tác giả tập trung nghiên cứu phương pháp chuyển đổi UML State Machine thành mạng SPN, đặc biệt tập trung vào nội dung trọng tâm của đề tài là đánh giá hiệu năng hệ thống sử dụng mạng SPN

Trang 21

13

1.5 Chuyển đổi từ UML State Machine thành mạng SPN

Hiện nay, để đánh giá hiệu năng của hệ thống ta có 3 phương pháp là: mô hình hóa phân tích, mô hình mô phỏng, đo hiệu năng Trong đó phương pháp mô hình hóa được áp dụng nhiều vì có những ưu điểm vượt trội hơn 2 phương pháp còn lại Theo phạm vi của đề tài tác giả tập trung nghiên cứu mô hình mạng SPN trong đánh giá hiệu năng Hệ thống được thiết kế dưới dạng UML State Machine và sử dụng để các nhóm thiết kế trao đổi với nhau cũng như dùng để phát triển (coding), thuyết phục khách hàng, các nhà đầu tư… Việc đầu tiên của đánh giá hiệu năng là chuyển đổi thành mạng SPN

1.6 Đánh giá hiệu năng hệ thống Share Memory

1.6.1 Khái niệm Share Memory

Bộ nhớ chia sẻ là bộ nhớ sử dụng để nhiều chương trình có thể đồng thời truy cập với một mục đích để trao đổi thông tin hoặc tránh những bản sao trùng lặp Bộ nhớ chia sẻ là một biện pháp hiệu quả trong việc truyền dữ liệu giữa các chương trình Tùy thuộc vào hoàn cảnh, chương trình có thể chạy trên một bộ xử lý đơn hoặc nhiều bộ xử lý riêng biệt

1.6.2 Hiệu năng của các hệ thống Share Memory

Để đánh giá một hệ thống Share Memory ta quan tâm đến tiêu chí sau:

sử dụng nhiều kỹ thuật phân tích khác nhau Khả năng ứng dụng các kỹ thuật phân tích hiệu năng của hệ thống phụ thuộc vào tính chất của hệ thống và các đặc điểm

mà các kỹ thuật phân tích đáp ứng được như thế nào

Trang 22

14

CHƯƠNG 2 PHƯƠNG PHÁP CHUYỂN ĐỔI UML STATE MACHINES

THÀNH MẠNG SPN 2.1 Tổng quan về UML State Machine

UML State Machine là một biến thể của Harel Statecharts và có thể được sử dụng cho mô hình hóa rời rạc hành vi thông qua hệ thống chuyển đổi hữu hạn

UML State Machine mô tả trình tự có thể có của các trạng thái và các hành động thông qua đó các phần tử mô hình hóa có thể tiến hành trong suốt vòng đời của nó như là một kết quả của phản ứng với các sự kiện rời rạc

Một biểu đồ trạng thái thường là một sự bổ sung cho lời miêu tả một lớp Nó chỉ ra tất cả các trạng thái mà đối tượng của lớp này có thể có, và những sự kiện (event) nào sẽ gây ra sự thay đổi trạng thái (hình 2.1) Một sự kiện có thể xảy ra khi một đối tượng tự gửi thông điệp đến cho nó - ví dụ như để thông báo rằng một khoảng thời gian được xác định đã qua đi – hay là một số điều kiện nào đó đã được

thỏa mãn Một sự thay đổi trạng thái được gọi là một sự chuyển đổi trạng thái (State

Transition) Một chuyển đổi trạng thái cũng có thể có một hành động liên quan, xác định điều gì phải được thực hiện khi sự chuyển đổi trạng thái này diễn ra

Biểu đồ trạng thái không được vẽ cho tất cả các lớp, mà chỉ riêng cho những lớp có một số lượng các trạng thái được định nghĩa rõ ràng và hành vi của lớp bị ảnh hưởng và thay đổi qua các trạng thái khác nhau Biểu đồ trạng thái cũng có thể được vẽ cho hệ thống tổng thể

Hình 2.1 Một ví dụ về biểu đồ trạng thái

Biểu đồ trạng thái nắm bắt vòng đời của các đối tượng, các hệ thống con (Subsystem) và các hệ thống Chúng cho ta biết các trạng thái mà một đối tượng có thể có và các sự kiện (các thông điệp nhận được, các khoảng thời gian đã qua đi, các lỗi xảy ra, các điều kiện được thỏa mãn) sẽ ảnh hưởng đến những trạng thái đó như

Trang 23

2.1.1 Trạng thái và sự biển đổi trạng thái (State transition)

Tất cả các đối tượng đều có trạng thái; trạng thái là một kết quả của các hoạt động trước đó đã được đối tượng thực hiện và nó thường được xác định qua giá trị của các thuộc tính cũng như các nối kết của đối tượng với các đối tượng khác Một lớp có thể có một thuộc tính đặc biệt xác định trạng thái, hoặc trạng thái cũng có thể được xác định qua giá trị của các thuộc tính “bình thường" trong đối tượng

Một đối tượng sẽ thay đổi trạng thái khi có một việc nào đó xảy ra, thứ được gọi là sự kiện Khía cạnh động có hai chiều không gian: tương tác và sự biến đổi trạng thái nội bộ Tương tác miêu tả lối ứng xử đối ngoại của các đối tượng và chỉ

ra đối tượng này sẽ tương tác với các đối tượng khác ra sao (qua việc gửi thông điệp, nối kết hoặc chấm dứt nối kết) Sự biến đổi trạng thái nội bộ miêu tả một đối tượng sẽ thay đổi các trạng thái ra sao Biểu đồ trạng thái được sử dụng để miêu tả việc bản thân đối tượng phản ứng ra sao trước các sự kiện và chúng thay đổi các trạng thái nội bộ của chúng như thế nào

Trạng thái của đối tượng thường được mô tả trong hình chữ nhật góc tròn và được xác định bởi [6]:

- Tên gọi trạng thái: thường bắt đầu bằng động từ,

- Biến trạng thái: mô tả các giá trị hiện thời của trạng thái,

- Hoạt động: là hành vi mà đối tượng sẽ thực hiện khi nó ở vào trạng thái đó

Hoạt động của trạng thái được mô tả hình thức như sau:

event_name argument_list ‘/’ action_exp

Trong đó,

event_name: Tên của sự kiện, có thể là một trong các sự kiện chuẩn: exit

(thoát ra), entry (nhập vào), do (thực hiện)

argument_list: danh sách các sự kiện,

Trang 24

16

action_exp: những hoạt động cần thực hiện bao gồm các lời gọi hàm, thao

tác trên các biến trạng thái, v.v

Trạng thái Login (đăng nhập hệ thống) được mô tả trong UML:

Hình 2.2 Trạng thái Login

Khi hệ thống ở trạng thái Login thì biến LoginTime (thời gian khi khởi nhập) được gán là CurrentTime (thời gian hiện thời) của máy tính Sự kiện vào của trạng thái này là gõ từ “login” và để thoát ra khỏi trạng thái này thì phải thực hiện lời gọi hàm login(UserName, Password) Các hoạt động của đối tượng ở trạng thái này là: Nhận vào UserName (tên người sử dụng), Password (mật khẩu), và hiển thị sự trợ giúp display help

Khi không cần mô tả chi tiết thì có thể chỉ cần tên gọi để xác định trạng thái trong các biểu đồ

Có hai trạng thái đặc biệt là trạng thái bắt đầu được ký hiệu là: và trạng thái kết thúc, được ký hiệu là

Biểu đồ trạng thái thường có trạng thái bắt đầu còn trạng thái kết thúc thì có thể có hoặc không tuỳ vào chu kỳ hoạt động của các đối tượng

Trong biểu đồ, đường mũi tên chỉ ra sự biến đổi từ một trạng thái sang trạng thái khác khi có các sự kiện xảy ra làm thay đổi các trạng thái Trạng thái của đối tượng sẽ bị thay đổi khi có cái gì đó xảy ra, nghĩa là khi có một hay nhiều sự kiện xuất hiện Sự biến đổi trạng thái hay sự chuyển trạng thể hiện mối quan hệ giữa các trạng thái với nhau

Sự chuyển trạng thái được thể hiện trong biểu đồ bằng mũi tên có nhãn là sự kiện, thao tác (hàm có đối số), hoặc điều kiện cầm canh (guard) Sự chuyển trạng thái có thể là đệ qui, nghĩa là trong một điều kiện nhất định, một đối tượng có thể quay lại trạng thái cũ của nó

Trang 25

- Một hoặc nhiều trạng thái kết thúc

- Sự biến đổi giữa các trạng thái

- Những sự kiện gây nên sự biến đổi từ một trạng thái này sang trạng thái khác

Hình sau sẽ chỉ ra các kí hiệu UML thể hiện trạng thái bắt đầu và trạng thái kết thúc, sự kiện cũng như các trạng thái của một đối tượng

Hình 2.3 Các ký hiệu UML thể hiện bắt đầu, kết thúc, sự kiện và trạng thái

của một đối tƣợng

Hình 2.4 Biểu đồ trạng thái thực hiện hoá đơn

Một trạng thái có thể có ba thành phần, như được chỉ trong hình sau :

Hình 2.5 Các ngăn Tên, Biến trạng thái và hành động

Trang 26

18

Phần thứ nhất chỉ ra tên của trạng thái Phần thứ hai (không bắt buộc) dành cho các biến trạng thái Đây là những thuộc tính của lớp được thể hiện qua biểu đồ trạng thái, nhiều khi các biến tạm thời cũng tỏ ra rất hữu dụng trong trạng thái, ví dụ như các loại biến đếm (counter) Phần thứ ba (không bắt buộc) là phần dành cho hoạt động, nơi các sự kiện và các hành động có thể được liệt kê Có ba loại sự kiện chuẩn hóa có thể được sử dụng cho phần hành động: entry (đi vào), exit (đi ra), và do (thực hiện) Loại sự kiện đi vàođược sử dụng để xác định các hành động khởi nhập trạng thái, ví dụ gán giá trị cho một thuộc tính hoặc gửi đi một thông

điệp Sự kiện đi ra có thể được sử dụng để xác định hành động khi rời bỏ trạng thái Sự kiện thực hiện được sử dụng để xác định hành động cần phải được thực hiện trong trạng thái, ví dụ như gửi một thông điệp, chờ, hay tính toán Ba loại sự kiện chuẩn này không thể được sử dụng cho các mục đích khác

Một sự biến đổi trạng thái thường có một sự kiện đi kèm với nó, nhưng không bắt buộc Nếu có một sự kiện đi kèm, sự thay đổi trạng thái sẽ được thực

hiện khi sự kiện kia xảy ra Một hành động loại thực hiện trong trạng thái có thể là

một quá trình đang tiếp diễn (ví dụ: chờ, điều khiển các thủ tục, ) phải được thực

hiện trong khi đối tượng vẫn ở nguyên trong trạng thái này Một hành động thực

hiện có thể bị ngắt bởi các sự kiện từ ngoài, có nghĩa là một sự kiện kiện gây nên

một sự biến đổi trạng thái có thể ngưng ngắt một hành động thực hiện mang tính nội

bộ đang tiếp diễn

Trong trường hợp một sự biến đổi trạng thái không có sự kiện đi kèm thì trạng thái sẽ thay đổi khi hành động nội bộ trong trạng thái đã được thực hiện xong (hành động nội bộ kiểu đi vào, đi ra, thực hiện hay các hành động do người sử dụng định nghĩa) Theo đó, khi tất cả các hành động thuộc trạng thái đã được thực hiện xong, một sự thay đổi trạng thái sẽ tự động xảy ra mà không cần sự kiện từ ngoài

Hình 2.6 Biến đổi trạng thái không có sự kiện từ ngoài

Trang 27

19

2.1.3 Nhận biết trạng thái và sự kiện

Quá trình phát hiện sự kiện và trạng thái về mặt bản chất bao gồm việc hỏi một số các câu hỏi thích hợp [6]:

- Một đối tượng có thể có những trạng thái nào?: Hãy liệt kê ra tất cả những trạng thái mà một đối tượng có thể có trong vòng đời của nó

- Những sự kiện nào có thể xảy ra?: Bởi sự kiện gây ra việc thay đổi trạng thái nên nhận ra các sự kiện là một bước quan trọng để nhận diện trạng thái

- Trạng thái mới sẽ là gì?: Sau khi nhận diện sự kiện, hãy xác định trạng thái khi sự kiện này xảy ra và trạng thái sau khi sự kiện này xảy ra

- Có những thủ tục nào sẽ được thực thi?: Hãy để ý đến các thủ tục ảnh hưởng đến trạng thái của một đối tượng

- Chuỗi tương tác giữa các đối tượng là gì?: Tương tác giữa các đối tượng cũng có thể ảnh hưởng đến trạng thái của đối tượng

- Qui định nào sẽ được áp dụng cho các phản ứng của các đối tượng với nhau? Các qui định kiềm tỏa phản ứng đối với một sự kiện sẽ xác định rõ hơn các trạng thái

- Những sự kiện và sự chuyển tải nào là không thể xảy ra?: Nhiều khi có một

số sự kiện hoặc sự thay đổi trạng thái không thể xảy ra

- Cái gì khiến cho một đối tượng được tạo ra?: Đối tượng được tạo ra để trả lời cho một sự kiện

- Cái gì khiến cho một đối tượng bị hủy?: Đối tượng sẽ bị hủy đi khi chúng không được cần tới nữa

- Cái gì khiến cho đối tượng cần phải được tái phân loại (reclassfied)?: Những loại sự kiện như một nhân viên được tăng chức thành nhà quản trị sẽ khiến cho động tác tái phân loại của nhân viên đó được thực hiện

2.2 Trạng thái cơ bản của chuyển đổi

Việc chuyển đổi tới các trạng thái đơn giản là bước đầu tiên khi thực hiện chuyển đổi sơ đồ trạng thái UML Cần phải xem là thời gian có thể được tiêu tốn trong mỗi trạng thái do nhập tùy chọn bên trong, các hoạt động thực hiện và hoạt động thoát (cũng gọi là các hành vi) Trong mối liên hệ này, chúng ta tránh việc tạo

Trang 28

(a) Không có hoạt động tùy chọn (b) chỉ có hoạt động vào

(c) hoạt động thực hiện (d) chỉ thực hiện hoạt động thoát

Hình 2.7 Trạng thái biến đổi cơ bản I

Các chuyển đổi được trình bày trong Hình 2.8 bao gồm các trường hợp còn lại nếu trên một hoạt động bên trong đi kèm với trạng thái A [7] Liên quan tới điều

Trang 29

21

này, chúng tôi xem xét thứ tự thời gian mà hoạt động nhập luôn được thực hiện trước bất kỳ hành vi nào trong một trạng thái Hoạt động thoát được tiến hành sau khi hoạt động thực hiện kết thúc Hình 2.8(d) thể hiện quá trình chuyển đổi hoàn chỉnh dành cho trường hợp này nếu tất cả các hoạt động tùy chọn được đi kèm với trạng thái A

Các quy ƣớc đặt tên: Việc chuyển đổi một trạng thái đơn giản S sang mảng

SPN có chứa các vị trí và PN-transition sau đây: đặt place ent_S → PN-transition t_ent_S (hoạt động nhập) → đặt S → PN-transition t_do_S (hoạt động thực hiện) → đặt ex_S → PN-transition t_ex_S (hoạt động thoát) → đặt out_S, theo trình bày cho trạng thái A tại hình 2.8(d) Điểm bắt đầu thuộc về hoạt động chuyển đổi của trạng thái S được đặt tên là ent_out_S (hình 2.7(a)) hoặc ent_S (hình 2.7(b)) Điểm cuối cùng thuộc về việc chuyển đổi của một trạng thái S được đặt tên là ent_out_S (hình 2.7(a)) hoặc out_S (hình 2.7(b)) Điểm trung gian sau t_ent_S (hoạt động nhập) chỉ được đặt tên là S được thể hiện trong các trường hợp trình bày tại hình 2.8(a,b,d)

Vị trí trung gian ex_S giữa t_do_S (hành động thực hiện) và t_ex_S (hành động thoát) chỉ được thể hiện trong các trước hợp trình bày tại hình 2.8(c-d)

(a) hoạt động nhập và thực hiện (b) hoạt động nhập và thoát

(c) hoạt động thực hiện và thoát (d) tất cả các hoạt động

Hình 2.8 Trạng thái biến đổi cơ bản II

Trang 30

Hình 2.9 Trạng thái khỏi đầu

2.3.2 Trạng thái nhánh

Trạng thái giả lập nhánh được sử dụng để chia một SM-transition thành một vài khu vực trực giao Hình 2.10 thể hiện việc chuyển đổi trạng thái giả lập nhánh SM-transition ra của trạng thái A được phân nhánh các trạng thái B và D vào các khu vực trực giao của trạng thái phức hợp C [7] Điều này dẫn đến việc phân nhánh mảng SPN tương ứng Do thời gian và các trigger chỉ được cho phép các SM-transition vào của trạng thái giả lập nhánh, việc phân chia có thể được thực hiện bằng cách sử dụng một PN-transition PN-transition t_fork_A trình bày trong cả hai trường hợp, hành vi tiềm ẩn kèm theo SM-transition vào của nhánh Sau khi hành

vi, hoạt động vào tiềm ẩn của trạng thái phức hợp C được thực hiện (t_ent_C), nơi việc phân nhánh thành các vị trí ent_out_B và ent_out_D được thực hiện Hình 2.10

mô tả thêm việc sử dụng trạng thái giả lập được kích hoạt Trong trường hợp này, mảng SPN của việc chuyển đổi sự kiện được chèn vào trước t_fork_A

Ngày đăng: 25/07/2017, 21:52

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] BALSAMO, S., and SIMEONI, M. On transforming UML models into performance models. Workshop on Transformations in the Unified Modeling Language, April 2001 Sách, tạp chí
Tiêu đề: Workshop on Transformations in the Unified Modeling Language
[2] FRANKS, G., MALY, P., WOODSIDE, M., PETRIU, D., and HUBBARD, A. Layered Queuing Network Solver and Simulator User Manual. Carleton University, Ottawa, Canada, 2005 Sách, tạp chí
Tiêu đề: Layered Queuing Network Solver and Simulator User Manual
[3] OMG. UML Profile for Schedulability, Performance, and Time. OMG document ptc/2002-03-02, Available: http://www.omg.org/cgi-bin/doc?ptc/2002-03-02 Sách, tạp chí
Tiêu đề: UML Profile for Schedulability, Performance, and Time
[4] LAZOWSKA, E., KAHORJAN, J., GRAHAM, G. S., and SEVCIK, K. C. Quantitative System Performance: Computer System Analysis Using QueuingNetwork Models. Prentice-Hall, Inc., Englewood Cliffs, 1984 Sách, tạp chí
Tiêu đề: Quantitative System Performance: Computer System Analysis Using QueuingNetwork Models
[5] Piet Van Hieghem, Performance Analysis of Communications Networks and Systems, Cambridge University Press, 2006 Sách, tạp chí
Tiêu đề: Performance Analysis of Communications Networks and Systems
[10] Jensen, Kurt. Coloured Petri Nets: Basic Concepts, Analysis Methods and Practical Use, Springer-Verlag, Berlin, Heidelberg Sách, tạp chí
Tiêu đề: Coloured Petri Nets: Basic Concepts, Analysis Methods and Practical Use
[11] K.S.TRIVEDI, “The Evolution of Stochastic Petri Nets” In Proc. World Congress on Systems Simulation, Singapore, Sept. 1-3, 1997 Sách, tạp chí
Tiêu đề: The Evolution of Stochastic Petri Nets”
[6] Object Management Group. UML profile for schedulability, perfor-mance, and time. www.uml.org, March 2002 Khác
[7] Quanititative Evaluation of UML State Machine Using Stochastic Petri Nets - Doktor-Ingenieur G. Hommel, I. Schieferdecker, R. German, Berlin 2007 Khác
[8] Ramya Ramalinga Moorthy (2000), Software Performance Testing Handbook - A Comprehensive guide for beginners Khác
[9] Falko Bause, Pieter S.Kritzinger (2002), Stochastic Petri Nets Khác
[12] A System Performance Evaluation Method Using Stochatics Petri Net - Tạ Hải Tùng Khác

HÌNH ẢNH LIÊN QUAN

Bảng 1. Những tiêu chí để lựa chọn kỹ thuật đánh giá - Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets
Bảng 1. Những tiêu chí để lựa chọn kỹ thuật đánh giá (Trang 15)
Hình 1.1. Mô hình hàng đợi - Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets
Hình 1.1. Mô hình hàng đợi (Trang 18)
Hình 2.4. Biểu đồ trạng thái thực hiện hoá đơn. - Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets
Hình 2.4. Biểu đồ trạng thái thực hiện hoá đơn (Trang 25)
Hình 2.10. Trạng thái nhánh  2.4. Kết luận chương 2 - Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets
Hình 2.10. Trạng thái nhánh 2.4. Kết luận chương 2 (Trang 31)
Bảng 2. Một số biểu diễn đặc trƣng các vị trí và chuyển tiếp của PN - Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets
Bảng 2. Một số biểu diễn đặc trƣng các vị trí và chuyển tiếp của PN (Trang 33)
Hình 3.5. Đặc tính tương tranh của PN - Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets
Hình 3.5. Đặc tính tương tranh của PN (Trang 35)
Hình 3.3. PN thể hiện sự kết hợp các thẻ từ các vị trí vào của chuyển tiếp t 1 - Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets
Hình 3.3. PN thể hiện sự kết hợp các thẻ từ các vị trí vào của chuyển tiếp t 1 (Trang 35)
Hình 3.6. Đặc tính hỗn độn của PN  3.3. Mô phỏng hệ thống mạng SPN. - Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets
Hình 3.6. Đặc tính hỗn độn của PN 3.3. Mô phỏng hệ thống mạng SPN (Trang 36)
Hình 3.8. Các đánh dấu nhờ đạt đƣợc nhờ lần lƣợt kích hoạt các chuyển tiếp t 1 - Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets
Hình 3.8. Các đánh dấu nhờ đạt đƣợc nhờ lần lƣợt kích hoạt các chuyển tiếp t 1 (Trang 42)
Hình 3.9. Đánh dấu M 0  là không an toàn - Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets
Hình 3.9. Đánh dấu M 0 là không an toàn (Trang 43)
Hình 4.1. Hệ thống Share Memory - Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets
Hình 4.1. Hệ thống Share Memory (Trang 47)
Hình 4.2. Mô hình UML State Machine sang SPN của Process 1 - Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets
Hình 4.2. Mô hình UML State Machine sang SPN của Process 1 (Trang 48)
Hình 4.3. Mô hình UML State Machine sang SPN của Process 2 - Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets
Hình 4.3. Mô hình UML State Machine sang SPN của Process 2 (Trang 48)
Hình 4.4. Mô hình SPN của hệ thống Share Memory - Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets
Hình 4.4. Mô hình SPN của hệ thống Share Memory (Trang 49)
Bảng 3. Kết quả tổng hợp 3 lần đánh giá theo kịch bản 1 - Phương pháp đánh giá hiệu năng hệ thống sử dụng umlstate machine và stochastic petri nets
Bảng 3. Kết quả tổng hợp 3 lần đánh giá theo kịch bản 1 (Trang 52)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w