Phân tích

Một phần của tài liệu Phân tích thiết kế hệ thống thời gian thực (Trang 72)

Phân tích là xác định các tính chất quan trọng của tất cả các giải pháp khả thi, đúng đắn. Thiết kế bổ sung các phần tử cho các phân tích định nghĩa một giải pháp trên cơ sở tối ưu hoá một số ràng buộc. Triển khai tạo ra một thực hiện của thiết kế có thể thực thi được. Kiểm thử xác định rằng triển khai phù hợp với thiết kế và thực thi thoả mãn tất cả các ràng buộc về tính đúng đắn đã xác định trong pha phân tích.

Pha phân tích được chia thành 3 pha con: Phân tích yêu cầu, phân tích hệ thống và phân tích đối tượng.

Hình 3.3. Pha phân tích trong ROPES Phân tích Mô hình kiến trúc Các vector kiểm thử Đặc tả phần cứng Đặc tả phần mềm Đặc tả các

yêu cầu thực thi Đặc tả

Phân tích rủi ro Các ca sử dụng Các yêu cầu ứng dụng Ứng dụng đã kiểm thử Các kịch bản Các vector kiểm thử Đặc tả các yêu cầu Các nhƣợc điểm phân tích Mô hình hành vi đối tƣợng Mô hình cấu trúc đối tƣợng Phân tích hành vi Phân tích cấu trúc đối tƣợng Phân tích yêu cầu Phân tích hệ thống

1. Phân tích yêu cầu (Requirements Analysis) là tiến trình chính xác hóa các yêu cầu của khách hàng và xây dựng các yêu cầu này thành một dạng có thể hiểu được.

Các hoạt động của giai đoạn phân tích yêu cầu gồm: - Xác định các ca sử dụng và các tác nhân liên quan.

- Phân tích các ca sử dụng theo các quan hệ: tổng quát hoá, sử dụng, và mở rộng.

- Xác định và đặc tả các sự kiện mở rộng tác động đến hệ thống. - Định nghĩa các kịch bản hành vi

- Xác định các ràng buộc: ràng buộc tích hợp với các hệ thống khác và các ràng buộc thực thi

...

Phần lớn các hệ thống bao gồm 3 loại ca sử dụng: - Các ca sử dụng chủ yếu là các chức năng rõ ràng

- Các ca sử dụng thứ cấp ít phổ biến hơn nhưng cũng xác định một phần quan trọng các chức năng.

- Đôi khi, cũng cần xác định các ca sử dụng liên quan đến độ an toàn.

Tuy nhiên, ta nhớ rằng ca sử dụng là một chức năng mà đầu ra là kết quả có thể nhận biết được đối với các tác nhân mà không cần biết cấu trúc bên trong. Điều này có nghĩa là, xác định các ca sử dụng và các quan hệ của chúng không liên quan đến cấu trúc đối tượng.

Mỗi khi các ca sử dụng được xác định, các kịch bản có thể được kiểm tra chi tiết hơn. Nhớ rằng, các kịch bản là các trường hợp của các ca sử dụng. Các kịch bản yêu cầu là các phương tiện chủ yếu để chính xác hoá yêu cầu.

Xác định các sự kiện liên quan đến hệ thống và các thuộc tính của nó cũng được thực hiện trong giai đoạn phân tích yêu cầu. Giai đoạn này gồm các thông báo và các sự kiện mà các tác nhân gửi đến hệ thống và hệ thống phản hồi lại các thông báo đó. Các thuộc tính thực thi của mỗi thông báo tại mức này bao gồm:

- Một tác nhân liên quan: gửi thông báo và nhận phản hồi. - Thông báo có tính chu kỳ hay ngẫu nhiên.

- Thời gian đến của các thông báo: + Chu kỳ của các thông báo có chu kỳ

+ Khoảng thời gian nhỏ nhất giữa 2 thông báo hoặc độ dài burst của các thông báo ngẫu nhiên.

- Thông báo đáp ứng các thuộc tính:

+ Thời hạn cho các thông báo có thời hạn cứng.

+ Thời gian đáp ứng trung bình cho các thông báo có thời hạn mềm. - Các thông tin về trạng thái thông báo:

+ Tiền kiện bất biến của các thông báo.

+ Giao thức (dãy các thông báo được chấp nhận). + Thông tin của thông báo.

+ Hậu kiện bất biến đối với các đáp ứng.

Hai loại phần tử mô hình khác nhau được sử dụng trong phân tích yêu cầu: ngữ cảnh và hành vi. Các phần tử ngữ cảnh gồm:

 Các tác nhân (các đối tượng tồn tại bên ngoài phạm vi hệ thống),

 Các đối tượng hệ thống

 Các ca sử dụng

 Các quan hệ ca sử dụng

 Các thông báo mở rộng (bao gồm các sự kiện)

 Các rủi ro.

Các quan hệ ca sử dụng có thể là mối quan hệ giữa các ca sử dụng hoặc giữa ca sử dụng và tác nhân. Các tác nhân là các đối tượng bên ngoài ngữ cảnh ca sử dụng, và cũng có thể là người sử dụng hệ thống, các thiết bị mà hệ thống phải tích hợp, hoặc các hệ thống phần mềm khác. Các tác nhân có mối quan hệ với các ca sử dụng. Mối quan hệ này có thể hiểu là tác nhân có thể gửi hoặc nhận các thông báo tham dự trong kịch bản của ca sử dụng đó.

Xác định rủi ro là vấn đề quan trọng đối với các hệ thống có các tới hạn an toàn hoặc với các hệ thống có chi phi khắc phục lỗi hệ thống cao. Các phần tử hành vi bao gồm:

 Các ràng buộc (ràng buộc thực thi, khoảng thời gian chấp nhận lỗi)

 Các biểu đồ trạng thái (các trạng thái, các chuyển tiếp trạng thái)

 Các kịch bản

Các phần tử hành vi định nghĩa hệ thống hoạt động như thế nào, nhưng chỉ là các hình phối cảnh. Nói chung, phải sử dụng các biểu đồ trạng thái để định nghĩa hành vi của các giao thức thông báo và các hành vi được yêu cầu bởi các ca sử dụng. Các biểu đồ trạng thái là đủ để xây dựng, điều đó có nghĩa là một biểu đồ có thể định nghĩa hoàn chỉnh hành vi của phần tử ngữ cảnh liên quan. Các kịch bản chỉ là xây dựng bộ phận. Không thể định nghĩa đầy đủ hành vi hoàn chỉnh của một hệ thống phức tạp chỉ bằng một kịch bản đơn.

Các vật phẩm thu được của phân tích yêu cầu

Bảng 3.1. Các vật phẩm thu đƣợc của phân tích yêu cầu

Vật phẩm Biểu diễn Cơ sở? Mô tả Tài liêu

mô tả các yêu cầu

Văn bản Có Một mô tả các nội dung của hệ thống, giao diện với các tác nhân, các hành vi nhận biết được, bao gồm các ràng buộc và các yêu cầu an toán

Các ca sử dụng

Các biểu đồ ca sử dụng

Có Xác định các chức năng chính của hệ thống và các giao tác giữa các tác nhân và các ca sử dụng Các biểu đồ

trạng thái

Không Một số ca sử dụng có thể được kích hoạt. Không gian hành vi của cấcc sử dụng này có thể được lưu trữ trong các biểu đồ trạng thái.

Danh sách sự kiện

Không Mô tả các thuộc tính của các sự kiện nhận được bởi hệ thống hoặc xuất phát từ hệ thống, gồm các thông tin như chu kỳ, trễ đáp ứng (đối với các sự kiện có tính chu kỳ), thời gian đến tối thiểu,độ dài burst (đối với các sự kiện ngẫu nhiên), thời hạn Biểu đồ ngữ

cảnh

Không Biểu đồ gồm các đối tượng và các tác nhân tương tác với hệ thống. Xác định các thông báo và các sự kiện truyền giữa các tác nhân và hệ thống Các kịch bản ca sử dụng Các biểu đồ tuần tự Có Các biểu đồ thời gian Không Phân tích rủi ro Không Các vector kiểm thử Có

2. Phân tích hệ thống xây dựng chính xác hơn các mô hình đã được định nghĩa và dựa trên các yêu cầu, phân hoạch hành vi hệ thống thành các thành phần phần mềm, điện, cơ khí. Nó được sử dụng trong phát triển các hệ thống phức tạp, chẳng hạn các hệ thống trên máy bay... Nhiều hệ thống thời gian thực có thể bỏ qua bước phân tích hệ thống vì kiến trúc hệ thống đủ đơn giản để không cần bước này.

Các hoạt động của giai đoạn phân tích hệ thống gồm: - Xác định các đơn vị tổ chức có quy mô lớn.

- Xây dựng và phân tích các đặc tả hành vi phức tạp của các đơn vị tổ chức. - Phân tách các chức năng hệ thống theo 3 nguyên lý: phần mềm, điện tử và cơ

khí.

- Kiểm thử các hành vi với các mô hình thực thi.

Các phần tử siêu mô hình được sử dụng trong phân tích hệ thống gồm cả các phần tử cấu trúc và hành vi. Các thành phần cấu trúc được sử dụng để phân tách hệ thống thành các khối chức năng (các nút trong các biểu đồ bố trí).

Các vật phẩm của phân tích hệ thống

Bảng 3.2. Các vật phẩm thu đƣợc của phân tích hệ thống

Vật phẩm Biểu diễn Mô tả

Mô hình kiến trúc

Biểu đồ bố trí Xác định các khối phần cứng chứa các thành phần thực thi

Biểu đồ thành phần

Đặc tả thực thi

Sơ đồ trạng thái Các máy trạng thái hữu hạn được định nghĩa tại mức thành phần.

Các mô hình toán học

Các mô tả toán học của các chức năng có tính lặp, ví dụ vòng lặp điều khiển PID.

Biểu đồ hoạt động

Biểu đồ UML tương ứng với các biểu đồ luồng Biểu đồ tuần tự

Đặc tả phần mềm

Văn bản Các yêu cầu chi tiết về mặt trách nhiệm và hành vi của phần mềm.

Đặc tả phần cứng

Văn bản Các yêu cầu chi tiết về mặt trách nhiệm và hành vi của phần cứng

Các vector kiểm thử

Biểu đồ tuần tự Các kịch bản được sử dụng để kiểm thử hệ thống thực thi phù hợp với phân tích yêu cầu.

Về cơ bản, cả phân tích hệ thống và phân tích yêu cầu là mô tả chức năng của hệ thống. Mô tả này phụ thuộc nhiều vào phân tách hành vi và chức năng. Các khối có cấu trúc của phân tách này là các hành vi, các chức năng và các hoạt động. Các phần tử có cấu trúc này được sắp xếp thành các mô hình hệ thống. Mô hình hệ thống mô tả đặc tả hệ thống.

3. Phân tích đối tƣợng là một cách khác để mô hình hệ thống. Phân tích đối tượng gồm hai pha con: phân tích cấu trúc đối tượng và phân tích hành vi đối tượng. Phân tích cấu trúc đối tượng xác định các khối đối tượng có cấu trúc: lớp và đối tượng, các khối tổ chức của chúng (gói, nút, thành phần) và các quan hệ kế thừa giữa các phần tử này. Phân tích hành vi đối tượng định nghĩa các mô hình hành vi động cần thiết đối với các lớp xác định. Chuyển từ phân tích hệ thống sang phân tích đối tượng yêu cầu một bước triển khai không tầm thường.

Các hoạt động của phân tích đối tượng

- Áp dụng các chiến lược xác định đối tượng để phát hiện các đối tượng cần thiết của hệ thống.

- Trừu tượng hoá các đối tượng để xác định các lớp. - Phát hiện mối liên hệ giữa các các lớp và các đối tượng. - Xây dựng các cơ chế

- Định nghĩa các hành vi chủ yếu của các đối tượng được kích hoạt - Xác định các thao tác và thuộc tính cần thiết của các đối tượng - Kiểm thử các cơ chế và các kịch bản của nó.

- Phân tích các ràng buộc thực thi end-to-end thành các ràng buộc thực thi trên các thao tác lớp.

Các phần tử mô hình hoá được sử dụng là các phần tử chuẩn được tìm thấy trong các biểu đồ lớp và đối tượng: các lớp, các đối tượng, các quan hệ,...

Bảng 3.3. Các vật phẩm thu đƣợc của phân tích đối tƣợng

Vật phẩm Biểu diễn Mô tả

Mô hình cấu trúc đối tượng Các biểu đồ đối tượng và biểu đồ lớp

Xác định các trừu tượng cơ bản và tổ chức logic trong các gói và các cơ chế của chúng.

Các biểu đồ miền

Biểu đồ sử dụng một biểu đồ lớp gồm các gói chính được tổ chức với các đối tượng cơ sở và các quan hệ phụ thuộc giữa chúng Các biểu đồ thành phần Xác định các thành phần phát triển, ví dụ, các tệp, các thư mục. Mô hình hành vi đối tượng Sơ đồ trạng thái

Các máy trạng thái hữu hạn được định nghĩa tại mức lớp Biểu đồ hoạt

động

Biểu đồ UML tương ứng với các biểu đồ luồng Các biểu đồ

tuần tự Các biểu đồ cộng tác

Giống như biểu đồ tuần tự nhưng được tổ chức trực quan tương tự biểu đồ đối tượng.

Các biểu đồ thời gian

Đặc tả thời gian của các thao tác và chuyển trạng thái

Một phần của tài liệu Phân tích thiết kế hệ thống thời gian thực (Trang 72)