Методы и средства инженерии программного обеспечения


         

Сервлет – это небольшая программа - часть 2


Так как интерфейс не дает реализацию его операций, а предоставляет их описание имеется возможность  изменять реализацию без изменения интерфейса, а также добавлять  новые интерфейсы (и реализацию).

Семантика интерфейса может быть представлена с помощью  контрактов, в которых определяются глобальные ограничения, которые поддерживает компонент т.е инвариант. Контракт может определять ограничения операций, которые должны быть выполнены клиентом перед вызовом операции (пред–условия), и условия, которые предлагает  установить после завершения операции (пост–условия). Вместе пред–условия, инвариант и пост–условия составляют спецификацию поведения компонента.

Каждый интерфейс состоит из набора операций (сервисов, которые он предлагает или требует). С каждой операцией связанный набор пред–условия  и пост–условия, зависящие от состояния, которое получает компонент. Контракты и интерфейс связаны между собою, но наполняются по–разному. Интерфейс отражает функциональные свойства и состоит из  набора операций для спецификации сервисов, а контракт отражает семантику и  описание поведения компонента, зависящее от взаимодействия  с другими компонентами.

Нефункциональные свойства задают общие черты поведения компонента, которые не могут быть выражены через стандартные интерфейсы. Примерами нефункциональных свойств являются надежность, живучесть, доступность и др. Все эти свойства можно предоставлять как специальные расширения интерфейса, которые обеспечивают сервисы описания компонента, динамической конфигурации, динамического взаимодействия с другими компонентами или средой.




Содержание  Назад  Вперед