Читайте также:
|
|
На основании прецедентов были выявлены классы:
Внешняя панель OutPanel - Boundary
Внутренняя панель InPanel - Boundary
Система управления CSystem - Control
Дисплей CDisplay - Boundary
Микрофон CMic - Entity
Громкоговоритель CSpeaker - Entity
Звонок CRing - Entity
Замок CLock - Entity
Диаграммы кооперации и взаимодействия расположены в Приложении.
Взаимодействие «Открыть замок снаружи»:
Пользователь снаружи набирает код доступа на внешней панели, генерируется сообщение SetCode класса Внешней панели, здесь генерируется сообщение DWrite класса Дисплея, выводящее набираемые цифры на дисплей, затем набранный код доступа передается в систему (EnterPass класса Система), система проверяет статус работы (GetSStat класса Система), затем проверяет переданный код доступа (VerPass класса Система), если код верный, то генерируется сообщение OpenLock класса Замок, открывающее замок, и сообщение DClear класса Дисплей, очищающее дисплей, если введенный код не верен, то генерируется сообщение DError класса Дисплей, выводящее на дисплей сообщение об ошибке.
Взаимодействие «Открыть замок изнутри»:
Пользователь внутри помещения нажимает на внутренней панели кнопку Открыть, генерируется сообщение PushKeyOpen класса Внутренный панели, в нем генерируется сообщение OpenLock класса Замок, которое открывает замок.
Взаимодействие «Вызвать»:
Пользователь снаружи нажимает кнопку Вызов на внешней панели, генерируется сообщение PushKeyRing класса Внешней панели, это сообщение проверяет статус замка, генерируя сообщение GetlockStat класса Замок, если замок закрыт, то генерируется сообщение RingOn класса Звонок, включающее звонок, расположенный внутри помещения, он звучит несколько секунд, затем генерируется сообщение RingOff класса Звонок и сигнал прекращается, если в помещении кто-то есть и он принимает решение ответить, то нажатием кнопки Ответ на внутренней панели генерирует сообщение PushKeyAnswer класса Внутренней панели, это сообщении проверяет статус микрофонов и громкоговорителей, расположенных внутри и снаружи помещения, генерируя сообщения GetMicStat класса Микрофон и GetSpStat класса громкоговоритель соответственно, если они выключены, то генерируются сообщения об их включении: SetMicStat класса Микрофон и SetSpStat класса громкоговоритель. Затем, чтобы прекратить разговор человек внутри снова нажимает кнопку Ответ, генерируется сообщение PushKeyAnswer класса Внутренней панели, в нем проверяются статусы микрофонов и громкоговорителей сообщениями GetMicStat класса Микрофон и GetSpStat класса громкоговоритель, если они включены, то генерируется сообщения SetMicStat класса Микрофон и SetSpStat класса громкоговоритель, которые их выключают.
Взаимодействие «Сменить код доступа»:
Пользователь снаружи нажимает кнопку Контроль на внешней панели, генерируется сообщение PushKeyControl класса Внешняя панель, которое проверяет статус замка, генерируя сообщение GetLockStat класса Замок, если замок открыт, (если закрыт, то на дисплей выводится сообщение об ошибке DError класса дисплей) то генерирует сообщения установки статусов системы: SetVStat класса Система, устанавливает статус проверки кода (т.е. какого вида код будет в дальнейшем проверятся: доступа, контроля), и SetSStat класса Система, устанавливает статус работы системы (открытие замка, смена кода доступа, смена кода контроля), затем генерирует сообщение DEnterKK класса Дисплей, выводящее на дисплей приглашение ввести код контроля. Пользователь снаружи набирает код контроля, генерируется сообщение SetCode класса Внешней панели и сообщение DWrite класса Дисплей, выводящее набираемые цифры на дисплей, после набора 4 цифр генерируется сообщение EnterPass класса Система, обрабатывающее введенный код, оно генерирует сообщения GetSStat класса Система, проверяющее статус работы системы, статус должен сообщить о готовности системы к осуществлению смены кода доступа, затем генерируется сообщение GetVStat класса Система, проверяющее статус проверки кода, статус должен сообщить, что полученный код будет проверяться на соответствие коду контроля, что осуществится генерацией дальнейшего сообщения VerPass класса Система, если код верный, то генерируется сообщение SetVStat класса Система, меняющее статус проверки кода, что при последующей обработке нового кода доступа, вместе со статусом работы системы, установленным на выполнение смены код доступа, будет сигнализировать о том, что код необходимо сохранить, если код не верный, то генерируется сообщение DError класса Дисплей, выводящее на дисплей сообщение об ошибке. После проверки кода контроля генерируется сообщение DEnterKD класса Дисплей, выводящее на дисплей приглашение ввести код доступа. Пользователь набирает новый код доступа, генерируется сообщение SetCode класса Внешней панели и сообщение DWrite класса дисплей, выводящее набираемые цифры на дисплей. После набора 4 цифр, генерируется сообщение EnterPass класса система, система получает введенный код, проверяется статус работы системы генерацией сообщения GetSStat класса система и новый код доступа заменяет старый генерацией сообщения SaveKD класса Система.
Взаимодействие «Сменить код контроля»:
Пользователь снаружи нажимает кнопку Вызов на внешней панели, генерируется сообщение PushKeyRing класса Внешняя панель, которое проверяет статус замка, генерируя сообщение GetLockStat класса Замок, если замок открыт, (если закрыт, то на дисплей выводится сообщение об ошибке DError класса дисплей) то генерирует сообщения установки статусов системы: SetVStat класса Система, устанавливает статус проверки кода (т.е. какого вида код будет в дальнейшем проверятся: доступа, контроля), и SetSStat класса Система, устанавливает статус работы системы (открытие замка, смена кода доступа, смена кода контроля), затем генерирует сообщение DEnterKK класса Дисплей, выводящее на дисплей приглашение ввести код контроля. Пользователь снаружи набирает код контроля, генерируется сообщение SetCode класса Внешней панели и сообщение DWrite класса Дисплей, выводящее набираемые цифры на дисплей, после набора 4 цифр генерируется сообщение EnterPass класса Система, обрабатывающее введенный код, оно генерирует сообщения GetSStat класса Система, проверяющее статус работы системы, статус должен сообщить о готовности системы к осуществлению смены кода контроля, затем генерируется сообщение GetVStat класса Система, проверяющее статус проверки кода, статус должен сообщить, что полученный код будет проверяться на соответствие коду контроля, что осуществится генерацией дальнейшего сообщения VerPass класса Система, если код верный, то генерируется сообщение SetVStat класса Система, меняющее статус проверки кода, что при последующей обработке нового кода контроля, вместе со статусом работы системы, установленным на выполнение смены код контроля, будет сигнализировать о том, что код необходимо сохранить, если код не верный, то генерируется сообщение DError класса Дисплей, выводящее на дисплей сообщение об ошибке. После проверки кода контроля генерируется сообщение DEnterKK класса Дисплей, выводящее на дисплей приглашение ввести код контроля. Пользователь набирает новый код контроля, генерируется сообщение SetCode класса Внешней панели и сообщение DWrite класса дисплей, выводящее набираемые цифры на дисплей. После набора 4 цифр, генерируется сообщение EnterPass класса система, система получает введенный код, проверяется статус работы системы генерацией сообщения GetSStat класса система и новый код доступа заменяет старый генерацией сообщения SaveKK класса Система.
Дата добавления: 2015-08-20; просмотров: 59 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
ОПИСАНИЕ МОДЕЛИ ПОВЕДЕНИЯ СИСТЕМЫ | | | ОПИСАНИЕ МОДЕЛИ СОСТОЯНИЙ |