Dùng khi bạn có một phiên bản mới của theme mà cung cấp thêm đặc điểm mới cập nhật của requirements thay đổi với một theme đã tồn tại. Với tích hợp override, bạn có thể chỉ ra một theme ghi đè một theme khác, các phần tử trong theme ghi đè sẽ thay thế các phần tử được so khớp trong theme ghi đè. Các phần tử không được so khớp sẽ được bổ sung vào kết quả tổng hợp.
Hình 4-3 Tích hợp ghi đè
Hình 4-3 là một ví dụ minh họa. Nhãn Match[name] trên relationship tổng hợp đưa ra một so khớp cho các lớp ClassB từ theme input , các attribute của chúng là a,b và operation của chúng là op1(). Attribute a trong theme tổng hợp là public, giống như được xác định trong overriding theme (Theme1). Ngoài ra, hành vi của op1() trong theme kết quả giống như trong Theme1, biểu đồ tuần tự cho op1() trong Theme2 đã được thay thế với biểu đồ tuần tự cho op1() trong Theme1.
43
Trong tích hợp override mũi tên của quan hệ tổng hợp đi từ theme bị ghi đè sang theme ghi đè.
Các nguyên tắc ghi đè
Các nguyên tắc cho xác định relationship tổng hợp với tích hợp override gồm có :
-Một relationship tổng hợp với tích hợp override phải là 1-1. Hay nói cách khác, một phần tử thiết kế chỉ ghi đè một phần tử thiết kế khác.
-Một phần tử thiết kế chỉ được ghi đè một lần, trong một đặc tả tổng hợp đơn. -Các phần tử thiết kế ghi đè và bị ghi đè không tham gia trong các tổng hợp merge và override nào khác. Điều này đảm bảo không có sự rối rắm với tham chiếu trong kết quả tổng hợp.