Начиная рисовать диаграммы последовательности, стоит придерживаться следующих рекомендаций:
- не рисуйте спецификации выполнения (или активации, или фокусы);
- если рисуете спецификации выполнения, то не рисуйте синхронные сообщения;
- если рисуете синхронные сообщения, следите, чтобы два разных сообщения не входили в одну и ту же спецификацию выполнения, и не рисуйте явные возвраты;
- если рисуете явные возвраты, следите, чтобы они шли туда, откуда пришло сообщение, начавшее спецификацию выполнения.
Если придерживаться этих пунктов, то можно сократить количество ошибок на диаграмме последовательности, даже не вникая при этом в смысл, придаваемый спецификациям выполнения.
По тексту Леоненкова диаграмма должна быть такой:
Если хочется, чтобы во второй альтернативе взаимодействовали не только объекты Obj1 и Obj3, но и Obj3 и Obj2, то картинка будет такой:
а текст изменится на: Если же сумма превышает $50, но не превышает $1000, то управление передается объекту 3,
который далее делает запрос к объекту 2, дожидается ответа и осуществляет возврат объекту 1.