Что такое псевдосостояния на дс
Фиксация зубных протезов
Возможности современной ортопедической стоматологии значительно возросли. Появляются новые конструкции, которые порой сложно отличить от естественных зубов и десен. Более эффективной становится и фиксация зубных протезов в полости рта. Для надежного крепления коронок, мостов, полных съемных и несъемных конструкций сегодня используются различные технологии. Применяемые методы зависят в основном от вида протезов.
Несъемные коронки и мосты
Для установки одиночных коронок или мостовых конструкций могут применяться два способа:
Временные иммедиат-протезы
Для кратковременной маскировки дефекта зубного ряда могут применяться «Бабочки». Это иммедиат-протезы, которые изготавливаются из мягкого полимерного материала. Такие модули крепятся с помощью пластиковых крючков, которые плотно охватывают опорные зубы. Обтачивать для этого ничего не нужно.
Частичные съемные конструкции
При отсутствии в ряду нескольких единиц и невозможности сделать имплантацию применяют частичное съемное протезирование зубов. Для этого могут использоваться конструкции:
Полные челюстные протезы
Если в челюсти не осталось зубов вообще, для восстановления жевательной функции также могут применяться съемные протезы. Они фиксируются принципиально разными способами. Например, конструкция может удерживаться в полости рта без дополнительных креплений благодаря тому, что:
Более надежный метод фиксации полного протеза – установка его на импланты. Их количество может быть минимальным – от двух до шести, в зависимости от клинической ситуации. При значительной атрофии альвеолярного отростка этот способ помогает стабилизировать конструкцию в челюсти, надежно закрепив ее на металлических мини-опорах. Фиксация полного протеза на имплантах дает возможность людям с адентией в максимально полной степени вернуть себе качество жизни после потери зубов.
Псевдосостояния
Псевдосостояния – начальное и конечное состояния объекта или процесса. Каждая диаграмма состояний должна начинаться начальным состоянием и заканчиваться конечным. Для добавления на диаграмму начального и конечного состояний используются кнопки и
соответственно.
Рассмотрим следующий пример. Составим диаграмму состояний для класса Order (Заказ), поскольку в нашей модели он наиболее часто будет менять свое состояние. Заказ может находиться в нескольких состояниях:
· при создании заказа он переходит в состояние Инициализация, в котором выполняются некоторые предварительные действия;
· после завершения инициализации заказ переходит в состояние Открыт, в котором к заказу добавляются новые пункты. Выход из этого состояния возможен или в случае отмены заказа, или в случае заполнения всех необходимых пунктов заказа;
· если заполнены все необходимые пункты заказа, то он переходит в состояние Закрыт, в котором происходит выписка счета. Выход из этого состояния произойдет только после того, как счет будет выписан;
· если заказ отменен, то из состояния Открыт он переходит в состояние Отменен. При выходе из этого состояния происходит удаление всех пунктов заказа.
Разместим все состояния объекта на диаграмме, в том числе начальное и конечное. Определим некоторые действия, которые выполняются в данных состояниях.
· на входе в состояние Инициализация – действие «Сохранить дату заказа»;
· деятельность состояния Инициализация – действие «Внести информацию о клиенте»;
· на выходе из состояния Открыт – действие создания пункта заказа;
· на выходе из состояния Отменен – действие «Сохранить дату отмены»;
· деятельность состояния Закрыт – действие «Выписать счет».
Действие добавления пунктов заказа, а также удаления отмененного заказа, пока опустим. С помощью инструмента Broom можно выровнять элементы относительно друг друга.
Моделирование параллельного поведения с помощью диаграмм состояний
Составное состояние и подсостояние
В качестве примера моделируемой системы стоит рассмотреть обычный телефонный аппарат. Он может находиться в различных состояниях, в частности в состоянии дозвона до абонента. Очевидно, для того чтобы позвонить, необходимо снять телефонную трубку, услышать тоновый сигнал, после чего набрать нужный телефонный номер. Таким образом, состояние дозвона до абонента является составным и состоит из двух последовательных подсостояний : Телефонная трубка поднята и Набор телефонного номера. Фрагмент диаграммы состояний для этого примера содержит одно состояние-композит, которое состоит из двух последовательных подсостояний (рис. 10.2).
В этом контексте недопустимо нахождение объекта одновременно в несовместимых подсостояниях (А, Б, В) или (В, Г, Д).
Поскольку каждый регион вложенного состояния специфицирует некоторый конечный подавтомат, то для каждого из вложенных конечных подавтоматов могут быть определены собственные начальное и конечное состояния (рис. 10.3). При переходе в данное составное состояние каждый из конечных подавтоматов оказывается в своем начальном состоянии. Далее происходит параллельное выполнение каждого из этих конечных подавтоматов, причем выход из составного состояния будет возможен лишь в том случае, когда все конечные подавтоматы будут находиться в своих конечных состояниях. Если какой-либо из конечных подавтоматов пришел в свое финальное состояние раньше других, то он должен ожидать, пока и другие подавтоматы не придут в свои финальные состояния.
Моделирование параллельного поведения с помощью диаграмм состояний
Сложные переходы и псевдосостояния
Графически такой переход изображается вертикальной черточкой, аналогично обозначению перехода в известном формализме сетей Петри. Если параллельный переход имеет две или более исходящих из него дуг (рис. 10.6, а), то его называют разделением ( fork ). Если же он имеет две или более входящие дуги (рис. 10.6, б), то его называют слиянием (join). Текстовая строка спецификации параллельного перехода записывается рядом с черточкой и относится ко всем входящим или исходящим дугам.
Синхронизирующее состояние обозначается небольшой окружностью, внутри которой помещен символ звездочки «*». Оно используется совместно с переходом-слиянием или переходом-разделением для того, чтобы явно указать события в других конечных подавтоматах, оказывающие непосредственное влияние на поведение данного подавтомата.
Так, например, при включении компьютера с некоторой сетевой операционной системой параллельно начинается выполнение нескольких процессов. В частности, происходит проверка пароля пользователя и запуск различных служб. При этом работа пользователя на компьютере станет возможной только в случае успешной его аутентификации, в противном случае компьютер может быть выключен. Рассмотренные особенности синхронизации этих параллельных процессов учтены на соответствующей диаграмме состояний с помощью синхронизирующего состояния (рис. 10.8).
Рекомендации по построению диаграмм состояний
При выделении состояний и переходов следует помнить, что длительность срабатывания отдельных переходов должна быть существенно меньшей, чем нахождение моделируемых элементов в соответствующих состояниях. Каждое из состояний должно характеризоваться определенной устойчивостью во времени. Другими словами, из каждого состояния на диаграмме не может быть самопроизвольного перехода в какое бы то ни было другое состояние. Все переходы должны быть явно специфицированы, в противном случае построенная диаграмма состояний является либо неполной (неадекватной), либо ошибочной с точки зрения нотации языка UML (ill formed).
Следует произвести обязательную проверку, чтобы никакие два перехода из одного состояния не могли сработать одновременно. Другими словами, необходимо выполнить требование отсутствия конфликтов у всех переходов, выходящих из одного и того же состояния. Наличие такого конфликта может служить признаком ошибки, либо параллельности или ветвления рассматриваемого процесса. Если параллельность по замыслу разработчика отсутствует, то следует ввести дополнительные сторожевые условия либо изменить существующие, чтобы исключить конфликт переходов. При наличии параллельности следует заменить конфликтующие переходы одним параллельным переходом типа ветвления.
Моделирование параллельного поведения с помощью диаграмм состояний
Сложные переходы и псевдосостояния
Графически такой переход изображается вертикальной черточкой, аналогично обозначению перехода в известном формализме сетей Петри. Если параллельный переход имеет две или более исходящих из него дуг (рис. 10.6, а), то его называют разделением ( fork ). Если же он имеет две или более входящие дуги (рис. 10.6, б), то его называют слиянием (join). Текстовая строка спецификации параллельного перехода записывается рядом с черточкой и относится ко всем входящим или исходящим дугам.
Синхронизирующее состояние обозначается небольшой окружностью, внутри которой помещен символ звездочки «*». Оно используется совместно с переходом-слиянием или переходом-разделением для того, чтобы явно указать события в других конечных подавтоматах, оказывающие непосредственное влияние на поведение данного подавтомата.
Так, например, при включении компьютера с некоторой сетевой операционной системой параллельно начинается выполнение нескольких процессов. В частности, происходит проверка пароля пользователя и запуск различных служб. При этом работа пользователя на компьютере станет возможной только в случае успешной его аутентификации, в противном случае компьютер может быть выключен. Рассмотренные особенности синхронизации этих параллельных процессов учтены на соответствующей диаграмме состояний с помощью синхронизирующего состояния (рис. 10.8).
Рекомендации по построению диаграмм состояний
При выделении состояний и переходов следует помнить, что длительность срабатывания отдельных переходов должна быть существенно меньшей, чем нахождение моделируемых элементов в соответствующих состояниях. Каждое из состояний должно характеризоваться определенной устойчивостью во времени. Другими словами, из каждого состояния на диаграмме не может быть самопроизвольного перехода в какое бы то ни было другое состояние. Все переходы должны быть явно специфицированы, в противном случае построенная диаграмма состояний является либо неполной (неадекватной), либо ошибочной с точки зрения нотации языка UML (ill formed).
Следует произвести обязательную проверку, чтобы никакие два перехода из одного состояния не могли сработать одновременно. Другими словами, необходимо выполнить требование отсутствия конфликтов у всех переходов, выходящих из одного и того же состояния. Наличие такого конфликта может служить признаком ошибки, либо параллельности или ветвления рассматриваемого процесса. Если параллельность по замыслу разработчика отсутствует, то следует ввести дополнительные сторожевые условия либо изменить существующие, чтобы исключить конфликт переходов. При наличии параллельности следует заменить конфликтующие переходы одним параллельным переходом типа ветвления.