Права и обязательства
Права и обязательства
Связывая с программой r предложения require pre и ensure post, класс говорит своим клиентам:
"Если вы обещаете вызвать r в состоянии, удовлетворяющем pre, то я обещаю в заключительном состоянии выполнить post".
В отношениях между людьми и компаниями контракт - это письменный документ, фиксирующий отношения. Удивительно, что в программной индустрии, где точность так важна и двусмысленность так рискованна, эта идея так долго не появлялась. Любой хороший контракт устанавливает для обоих участников как обязательства, так и приобретаемую выгоду; обычно обязательства одного оборачиваются выгодой для другого участника, и это взаимно. Все это верно и для контрактов между классами.
[x]. Предусловие связывает клиента: определяются условия, при которых вызов программы клиентом легитимен. Обязательства клиента приносят пользу поставщику.
[x]. Постусловие связывает класс: программа обязана обеспечить условия по ее завершению. Здесь польза клиента оборачивается обязательствами поставщика класса.
Вот пример контракта для одной из программ нашего примера:
put Обязательства Преимущества Клиент(Выполнить предусловие:)
Вызывать put(x) только для непустого стека.
(Из постусловия:)
Получить обновленный стек: не пустой, x на вершине, (item дает x, count увеличилось на единицу).
Поставщик
(Выполнить постусловие:)
Обновить представление стека: иметь x на вершине (item возвращает x), count увеличить на единицу, стек не пуст.
(Из предусловия:)
Упрощающее обработку предположение о том, что стек не пуст.
Таблица 11.1.Контракт программы: программа put класса стек
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Обязательства
Обязательства Обязательство – нечто такое, что вы обязаны сделать. Если вы обязуетесь сделать что-то к определенной дате, то к этой дате «что-то» должно быть готово. Если для этого вам придется работать по 12 часов в сутки и по выходным, пропускать семейные праздники – так
Подразумеваемые обязательства
Подразумеваемые обязательства Майк сталкивается с проблемой. Он не уверен в том, сколько времени потребуется Питеру для выполнения работы. Чтобы свести к минимуму неопределенность, он может попробовать добиться от Питера обязательства. Питер не в состоянии что-либо
Обязательства
Обязательства Как мы узнали в главе 10, важно избегать принятия обязательств на сроки, в соблюдении которых вы не уверены. Бизнес всегда будет стараться добиться от вас таких обязательств, потому что он хочет полностью исключить риск. А мы должны позаботиться о том, чтобы
Обязательства по выполнению
Обязательства по выполнению Описывают действия, которые должна выполнить организация, чтобы обеспечить установление и стабильность процесса. Обязательства по выполнению обычно касаются установления организационных политик и поддержки со стороны высшего
Обязательства по выполнению
Обязательства по выполнению Обязательство 1 Проект следует документу организационной политики управления системными требованиями, отнесенными к ПО.В рамках этих практик системные требования, отнесенные к ПО, называются «установленными требованиями».Установленные
Обязательства по выполнению
Обязательства по выполнению Обязательство 1 Проект следует документированной организационной политике управления производственным субподрядом.Эта политика обычно состоит из следующих положений:1. При выборе субподрядчиков и управлении договорами по субподряду
Обязательства по выполнению
Обязательства по выполнению Обязательство 1 Проект следует документированной организационной политике по обеспечению качества ПО.Эта политика обычно состоит из следующих положений.1. Группа обеспечения качества контролирует работу по всем проектам разработки в
Обязательства по выполнению
Обязательства по выполнению Обязательство 1. Организация следует документированной политике координирования общекорпоративных мероприятий по разработке и усовершенствованию производственного процесса.Эта политика обычно состоит из следующих указаний:1. Создается
Обязательства по выполнению
Обязательства по выполнению Обязательство 1. Организация следует документированной политике разработки и сопровождения СППО и связанных с ним основных средств.Основные средства ППО:стандартный производственный процесс организации,инструкции и критерии для адаптации
Обязательства по выполнению
Обязательства по выполнению Обязательство 1. Организация следует документированной политике предоставления необходимого обучения.Эта политика обычно состоит из следующих положений:1. Должны быть определены навыки и знания, необходимые для каждой руководящей или
Обязательства по выполнению
Обязательства по выполнению Обязательство 1. Проект следует документированной организационной политике, согласно которой планирование проекта и управление им должно проводиться с использованием СППО и связанных с ним основных средств.Практики, касающиеся СППО и
Обязательства по выполнению
Обязательства по выполнению Обязательство 1. Проект следует документированной организационной политике выполнения операций по разработке ПО.Эта политика обычно состоит из следующих положений:1. Операции разработки ПО выполняются в соответствии с производственным
Обязательства по выполнению
Обязательства по выполнению Обязательство 1. Проект следует документированной организационной политике по созданию междисциплинарных инженерных групп.Эта политика обычно состоит из следующих положений:1. Системные требования к проекту и цели проектного уровня
Обязательства по выполнению
Обязательства по выполнению Обязательство 1. Проект следует документированной организационной политике проведения экспертных оценок.Эта политика обычно состоит из следующих положений:1. Организация определяет стандартный набор промежуточных программных продуктов,