độ tin cậy của hệ thống. Đây là một chủ đề lớn theo đúng nghĩa của nó và tôi bao gồm nó sepa- rately trong Chương 18. Kiến trúc của một hệ thống phần mềm có thể dựa trên một mô hình kiến trúc đặc biệt hoặc phong cách. Một mô hình kiến trúc là một mô tả của một tổ chức hệ thống (Garlan và Shaw, 1993), chẳng hạn như một tổ chức client-server hoặc một kiến trúc lớp. Mô hình kiến trúc nắm bắt được bản chất của một kiến trúc đã được sử dụng trong các hệ thống phần mềm ferent nhau. Bạn cần phải nhận thức của mô hình chung, nơi họ có thể được sử dụng, và thế mạnh của mình và điểm yếu khi đưa ra quyết định về các ture trúc của một hệ thống. Tôi thảo luận về một số mô hình thường xuyên được sử dụng trong phần 6.3. Garlan và Shaw của khái niệm về một phong cách kiến trúc (phong cách và mô hình đã đi đến ý nghĩa giống nhau) bao gồm các câu hỏi 4-6 trong danh sách trước đó. Bạn phải lựa chọn cơ cấu thích hợp nhất, chẳng hạn như client-server hoặc cấu trúc phân lớp, mà sẽ cho phép bạn để đáp ứng các yêu cầu hệ thống. Để phân tách các đơn vị hệ thống kết cấu, bạn quyết định về chiến lược để phân hủy các thành phần vào thành phần phụ. Các phương pháp mà bạn có thể sử dụng cho phép các loại khác nhau của kiến trúc được thực hiện. Cuối cùng, trong quá trình xây dựng mô hình điều khiển, bạn đưa ra quyết định về cách thức sự execu- của các thành phần được kiểm soát. Bạn phát triển một mô hình chung của các mối quan hệ kiểm soát giữa các phần khác nhau của hệ thống. Do mối quan hệ chặt chẽ giữa các yêu cầu phi chức năng và kiến trúc đồ mềm, cái đặc thù phong cách kiến trúc và cấu trúc mà bạn chọn cho một hệ thống cần phải phụ thuộc vào các yêu cầu hệ thống không có chức năng:
1. Hiệu suất Nếu hiệu suất là một yêu cầu quan trọng, kiến trúc cần được thiết kế để bản địa hoá hoạt động quan trọng trong một số lượng nhỏ các ponents đồng, với các thành phần này tất cả các triển khai trên cùng một máy tính chứ không phải phân phối qua mạng. Điều này có thể có nghĩa là sử dụng một vài ponents đồng tương đối lớn hơn là thành phần nhỏ, mịn hạt, làm giảm số lượng các thông tin liên lạc thành phần. Bạn cũng có thể xem xét hệ thống thời gian chạy các tổ chức, cho phép hệ thống để được nhân rộng và thực hiện trên các bộ xử lý khác nhau.
2. An ninh Nếu bảo mật là một yêu cầu quan trọng, cấu trúc phân lớp cho ture trúc nên được sử dụng, với các tài sản quan trọng nhất bảo vệ trong những người đối lay- trong cùng, với một mức độ cao của việc xác nhận bảo mật áp dụng cho các lớp.
3. An toàn Nếu an toàn là một yêu cầu quan trọng, kiến trúc cần được thiết kế để hoạt động an toàn liên quan đến tất cả đều nằm trong hoặc một thành phần duy nhất hoặc trong một số lượng nhỏ các thành phần. Điều này làm giảm chi phí và các vấn đề về an toàn val- idation và làm cho nó có thể cung cấp cho hệ thống bảo vệ liên quan mà có thể an toàn tắt hệ thống trong trường hợp thất bại.
4. Sẵn Nếu sẵn có là một yêu cầu quan trọng, kiến trúc cần được thiết kế để bao gồm các thành phần dư thừa để nó có thể thay thế và các thành phần cập nhật mà không cần dừng hệ thống. Tôi mô tả hai kiến trúc hệ thống chịu lỗi cho hệ thống có tính sẵn sàng cao trong Chương 13.
5. Bảo trì Nếu bảo trì là một yêu cầu quan trọng, hệ thống trúc ture nên được thiết kế sử dụng tinh hạt, thành phần khép kín mà có thể
đang được dịch, vui lòng đợi..
