«Глава 1. Основные сведения о языке UML Самое лучшее средство – это большая диаграмма, приколотая к стене. Даг Скотт 1.1. Цели и история создания языка UML Унифицированный язык моделирования UML (Unified Modeling ...»
включается радиоприемник на тридцать минут, а затем часы переходят в состояние будильника (аналогично положению «ВКЛ»). При нажатии на кнопку режима установки времени, будильник должен отображать время срабатывания.
4.19. Генеалогическое дерево Требуется разработать средствами Rational Rose модель системы для поддержки генеалогических деревьев.
Система хранит сведения о персонах (Ф.И.О., пол, дата рождения, дата смерти, биография) и о родственных связях между ними. Связи бывают только трех видов: «мужья-жены», «дети-родители» и «братьясестры». Система обеспечивает возможность добавления данных о новых персонах и родственных связях, изменение введенных данных и удаление ненужных данных. Система следит за непротиворечивостью вводимых данных. Например, недопустимо, чтобы человек был собственным предком или потомком.
Разработанная модель должна содержать схему базы данных для хранения генеалогических деревьев.
Пользователи системы могут осуществлять поиск полезной информации по дереву:
– находить для указанного члена семьи его детей;
– находить для указанного члена семьи его родителей;
– находить для указанной персоны братьев и сестер, если таковые – получать список всех предков персоны;
– получать список всех потомков персоны;
– получать список всех родственников персоны;
– прослеживать цепочку родственных связей от одной персоны до другой (например, если Петр является шурином Ивана, то на запрос о родственных связях между Петром и Иваном выдается такой результат: «Петр – брат Ольги, Ольга – жена Ивана»).
4.20. Телевизор Чудо с экраном в 36 сантиметров по диагонали называлось „Рубин-102“.
Требуется разработать средствами Rational Rose модель встроенной системы управления работой телевизора.
В телевизоре имеются следующие устройства: приемник телевизионного сигнала, устройство отображения картинки, память каналов, память настроек, управляющие кнопки, пульт дистанционного управления (ДУ). Управление телевизором осуществляется при помощи кнопок на корпусе (их четыре: «ВКЛ / ВЫКЛ», « – », « + », кнопка начальной установки) и пульта ДУ. Кнопка «ВКЛ / ВЫКЛ» позволяет включать и выключать телевизор. После включения телевизора на экран отображается передача, идущая по каналу №1, при этом используются параметры изображения и значение громкости, сохраненные в памяти настроек.
Память каналов телевизора хранит до 60 каналов. Каналы нумеруются, начиная с нуля. Последовательное переключение каналов осуществляется при помощи кнопок «–» и «+». Нажатие на «+»
переключает телевизор на канал с номером, на единицу большим (с 59-го канала телевизор переключается на 0-ой). Нажатие на «–» переключает телевизор на канал с номером, на единицу меньшим (с 0-го канала телевизор переключается на 59-ый).
При нажатии на кнопку начальной установки очищается память каналов телевизора, после чего осуществляется поиск передач и сохранение их частот в памяти каналов. Поиск начинается с нижней границы рабочего диапазона телевизора. На экран телевизора выводится «синий экран». Рабочая частота постепенно увеличивается до тех пор, пока приемник не обнаружит телевизионный сигнал. Найденная передача выводится на экран в течение 10 секунд. Также отображается номер, под которым найденный канал будет сохранен в памяти (начиная с 1).
Затем поиск продолжается до тех пор, пока не достигнута верхняя граница диапазона, или пока не заполнена вся память каналов.
Телевизор принимает управляющие сигналы с пульта ДУ. На пульте ДУ расположены следующие кнопки:
– кнопки с цифрами «0»...«9» для прямого переключения канала – кнопки «П–» и «П+» для последовательного переключения – кнопки «Г–» и «Г+» для изменения громкости;
– кнопки «МЕНЮ», « < » и « > » для доступа к экранному меню.
Для прямого переключения на нужный канал его номер набирается с помощью кнопок с цифрами. После нажатия первой цифры в течение секунд ожидается нажатие второй. Если вторая цифра не была нажата, то номер канала считается состоящим из одной цифры и осуществляется переключение на него.
Кнопки «П–» и «П+» на пульте имеют те же функции, что и кнопки «-» и «+» на корпусе телевизора. Кнопки «Г–» и «Г+» позволяют увеличивать или уменьшать громкость. Каждое нажатие на «Г–»
уменьшает громкость на одну единицу, пока она больше нуля, «Г+»
увеличивает громкость на единицу, пока не достигнуто максимальное значение. Текущее значение громкости сохраняется в памяти настроек.
Кнопки «МЕНЮ», «» позволяют устанавливать значения настоек, хранящихся в памяти телевизора. При нажатии на кнопку «МЕНЮ» внизу экрана возникает надпись «ЯРКОСТЬ» и полоса, отображающая текущее значение яркости. Кнопками «» яркость можно уменьшить или увеличить. При работе с меню нажатия на все остальные кнопки игнорируются. После повторного нажатия на кнопку «МЕНЮ» значение яркости запоминается в памяти настроек, и осуществляется переход к настройке контрастности. Настройка контрастности и остальных параметров (четкости, цветовой гаммы) происходит аналогично. Нажатие на кнопку «МЕНЮ» по окончании настройки цветовой гаммы (последнего пункта меню) приводит к окончанию работы с меню. Выход из меню также осуществляется в том случае, если в течение 15 секунд не была нажата ни одна кнопка.
4.21. Система поддержки составления расписания занятий возможны изменения, которые мы не в силах предусмотреть.
Требуется разработать средствами Rational Rose модель системы поддержки составления расписания занятий.
Система обеспечивает составление расписания некоторого учебного заведения, внесение в расписание изменений, выдачу полного расписания и дополнительной информации (например, по итоговому расписанию составляется расписание указанной группы на заданный день или неделю).
В расписании фиксируются время и место проведения занятия, предмет и преподаватель, проводящий занятие, а также номер группы, для которой это занятие проводится. Расписание не должно содержать коллизий (например, разные занятия не должны пересекаться друг с другом по месту и времени их проведения, один преподаватель не может вести одновременно два разных занятия, в одно и то же время у одной и той же группы не может быть два различных занятия и т. д.).
При работе над этим вариантом задания необходимо разработать схему базы данных для хранения расписания.
4.22. Домофон Тоже сторож. Но электронный. Надежный и беспристрастный.
Требуется разработать средствами Rational Rose модель программного обеспечения встроенного микропроцессора домофона.
Домофон регулирует доступ в подъезд многоквартирного дома.
В подъезде имеется дверь с замком. С наружной стороны двери установлена внешняя панель домофона, на которой находятся кнопки для связи с каждой квартирой, микрофон и динамик. В каждой квартире находится внутренняя панель домофона с кнопками: «СВЯЗЬ», «БЛОКИРОВКА» и «ОТКРЫТЬ». Кроме того, на внутренней панели имеется микрофон и динамик.
Жильцы могут открывать дверь ключом. Посетитель может нажать кнопку квартиры на внешней панели. При этом в квартире раздается звонок (если подача звонка в квартиру не заблокирована). Услышав звонок, жилец квартиры нажимает на кнопку «СВЯЗЬ» внутренней панели домофона, после чего домофон устанавливает звуковое сообщение между жильцом и посетителем. Звуки, произносимые посетителем в микрофон, установленный на внешней панели, воспроизводятся в динамике, установленном в квартире. Звуки из микрофона в квартире, передаются в динамик на внешней панели. После сеанса связи жилец может нажать на кнопку «ОТКРЫТЬ», чтобы замок на двери в подъезд открылся, и посетитель смог войти. По истечении минуты замок должен снова заблокировать вход в подъезд.
Жилец, который желает, чтобы его не беспокоили, может отключить подачу звонка в свою квартиру, нажав на кнопку «БЛОКИРОВКА».
Повторное нажатие на эту кнопку вновь включает подачу звонка.
Литература [Боггс-2000] Боггс У., Боггс М. UML и Rational Rose: Пер. с англ. – М.: Лори, 2000.
[Буч-1999] Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++. 2-е изд.: Пер. с англ. – М.: Издательство Бином, СПб.: Невский диалект, 1999.
[Буч-2000] Буч Г., Рамбо Дж., Джекобсон А. Язык UML. Руководство пользователя: Пер. с англ. – М.: ДМК, 2000.
[Вендров-1998] Вендров А. М. CASE-технологии. Современные методы и средства проектирования информационных систем. – М.:
Финансы и статистика, 1998.
[Вендров-2000] Вендров А. М. Проектирование программного обеспечения экономических информационных систем. – М.: Финансы и статистика, 2000.
[Гамма-2000] Гамма Э., Хелм Р., Джонсон Р., Влиссидес Дж. Приемы объектно-ориентированного проектирования: Пер. с англ. – М.: ДМК, 2000.
[Гома-2002] Гома Х. UML. Проектирование систем реального времени, распределенных и параллельных приложений.: Пер. с англ. – М.: ДМК, 2002.
[Коберн-2002] Коберн А. Современные методы описания функциональных требований к системам.: Пер. с англ. – М.: ЛОРИ, 2002.
[Коналлен-2001] Коналлен Д. Разработка Web-приложений с использованием UML: Пер. с англ. – М.: Вильямс, 2001.
[Коуд-1999] Коуд П., Норт Д., Мэйфилд М. Объектные модели.
Стратегии, шаблоны и приложения: Пер. с англ. – М.: Лори, 1999.
[Ларман-2001] Ларман К. Применение UML и шаблонов проектирования: Пер. с англ.: Учебное пособие – М.: Вильямс, 2001.
[Леоненков-2001] Леоненков В. А. Самоучитель UML – СанктПетербург: BHV, 2001.
[Мацяшек-2002] Мацяшек Л. Анализ требований и проектирование систем. Разработка информационных систем с использованием UML.: Пер.
с англ.: – М.: Вильямс, 2002.
[Розенберг-2002] Розенберг Д., Скотт К. Применение объектноориентированного моделирования с использованием UML и анализ прецедентов.: Пер. с англ. – М.: ДМК, 2002.
[Трофимов-2001] Трофимов С. А. CASE-технологии: практическая работа в Rational Rose – М.: БИНОМ, [Фаулер-1999] Фаулер М., Скотт К. UML в кратком изложении.
Применение стандартного языка объектного моделирования.: Пер. с англ.
– М.: Мир, 1999.
[Якобсон-2002] Якобсон А., Буч Г., Рамбо Дж. Унифицированный процесс разработки программного обеспечения.: Пер. с англ. – СПб: Питер, 2002.
Содержание Глава 1. Основные сведения о языке UML
1.1. Цели и история создания языка UML
1.2. Средства UML
1.3. Диаграммы вариантов использования
1.4. Диаграммы взаимодействия
1.4.1. Диаграммы последовательности
1.4.2. Кооперативные диаграммы
1.5. Диаграммы классов
1.5.1. Общие сведения
1.5.2 Стереотипы классов
1.5.3. Механизм пакетов
1.5.4. Атрибуты
1.5.5. Операции
1.5.6. Связи
1.6. Диаграммы состояний
1.7. Диаграммы деятельности
1.8. Диаграммы компонентов
1.9. Диаграммы размещения
Глава 2. Основные сведения о CASE-средстве Rational Rose.............. 2.1. Введение в Rational Rose
2.2. Работа в среде Rational Rose
2.2.1. Элементы экрана
2.2.2. Четыре представления модели Rose
2.2.3. Параметры настройки отображения
Глава 3. Выполнение учебного проекта
3.1. Система регистрации для ВУЗа. Постановка задачи
3.2. Составление глоссария проекта
3.3. Описание дополнительных спецификаций
3.4. Создание модели вариантов использования
3.5. Анализ системы
3.5.1. Архитектурный анализ
3.5.2. Анализ вариантов использования
3.6. Проектирование системы
3.6.1. Проектирование архитектуры
3.6.2. Моделирование распределенной конфигурации системы.... 3.6.3. Проектирование классов
3.6.4. Проектирование баз данных
3.7. Реализация системы
3.7.1. Создание компонентов
3.7.2. Генерация кода
Глава 4. Варианты заданий для самостоятельной работы.................. 4.1. Цифровой диктофон
4.2. Торговый автомат
4.3. Табло на станции метро
4.4. Система автоматизации для пункта проката видеокассет........ 4.5. Мини-АТС
4.6. Телефон
4.7. Стиральная машина
4.8. Таксофон
4.9. Банкомат
4.10. Холодильник
4.11. Кодовый замок
4.12. Турникет метро
4.13. Система учета товаров
4.14. Библиотечная система
4.15. Интернет-магазин
4.16. WWW-конференция
4.17. Каталог ресурсов Интернет
4.18. Будильник
4.19. Генеалогическое дерево
4.20. Телевизор
4.21. Система поддержки составления расписания занятий............ 4.22. Домофон
Литература