Управление ливневой канализацией
Скачать 0.81 Mb.
|
6. Разбиение на подсистемыНа следующем шаге система разбивается на подсистемы. Поскольку потенциально это приложение является распределенным, то, прежде всего, применяются рекомендации, касающиеся географического местоположения и агрегирования/композиции. В частности, все кнопки, отвечающие за работу системы, и связанные с процессом управления исправлением ошибок являются частями составного объекта Подсистема управления исправлением ошибок. С другой стороны, объекты Датчик функционирования водоприемника и Интерфейс датчика исправления ошибок входят в состав водоприемника, они образуют составной объект Подсистема водоприемник. Наконец, объект-координатор Диспетчер помещается в своей собственной подсистеме, поскольку не зависит ни от водоприемников, ни от процесса исправления ошибок. На рис. 9 показана общая структура разбиения на подсистемы управления исправлением ошибок, водоприемников и диспетчера. Подсистема управления исправлением ошибок – это управляющая подсистема, Подсистема водоприемников – подсистема сбора данных, а подсистема Диспетчер - координирующая. Структура Подсистемы управления исправлением ошибок представлена на рис.10, а Подсистемы водоприемников – на рис.11. Рис. 9. Разбиение на подсистемы Рис. 10. Структура подсистемы управления исправлением ошибок Рис. 11. Структура подсистемы водоприемника Дополнительно разрабатывается уточненная статическая модель, изображаемая на диаграмме классов. Эта диаграмма выводится из общей архитектуры подсистем и структуры каждой подсистемы. На диаграмме классов отражены все классы, из которых создаются объекты, представленные на диаграммах кооперации, а также отношения между этими классами, то есть сами кооперации. На рис.12 приведена уточненная статическая модель, в которой каждая подсистема предстает в виде составного класса. Становится очевидным, как программные понятия соответствуют статической модели предметной области, созданной ранее (см. рис.3). Так, составной класс Подсистема управления ливневой канализацией включает несколько классов, в том числе классы интерфейса устройств, например, Интерфейс датчик включения, Интерфейс датчик выключения, Интерфейс датчик включения автомата и Интерфейс датчик исправления ошибок, которые взаимодействуют с внешними классами, в частности Датчик функционирования водоприемника и Датчик исправления ошибки, представленными в статической модели. Аналогичные наблюдения справедливы в отношении составного класса Подсистема водоприемника и его составляющих. Операции каждого класса определены в разделах 9.5 и 11, посвященных проектированию классов. |