Главная > Информатика, программирование > Розробка моделі програмного забезпечення для телевізора в середовищі Rational Rose
Розробка моделі програмного забезпечення для телевізора в середовищі Rational Rose25-01-2012, 11:04. Разместил: tester1 |
КУРСОВА РОБОТА з дисципліни В«Проектування інформаційних системВ» на тему: В« Розробка моделі програмного забезпечення для телевізора в середовищі Rational Rose В» ЗМІСТ
ВСТУП 1. ПОСТАНОВКА ЗАВДАННЯ 2. ГЛОСАРІЙ ПРОЕКТУ 3. МОДЕЛЬ ВАРІАНТІВ ВИКОРИСТАННЯ 4. АНАЛІЗ ВАРІАНТІВ ВИКОРИСТАННЯ 5. ПРОЕКТУВАННЯ СИСТЕМИ 5.1 Ієрархія класів системи 5.2 Опис класів 5.3 Діаграма класів 5.4 Діаграма кооперації 5.5 Діаграма станів 6. РЕАЛІЗАЦІЯ СИСТЕМИ 6.1 Діаграма компонентів 6.2 Генерація коду ВИСНОВОК СПИСОК ЛІТЕРАТУРИ
Тенденції розвитку сучасних інформаційних технологій призводять до постійного зростання складності інформаційних систем (ІС), створюваних у різних галузях економіки. Для успішної реалізації проекту об'єкт проектування (ІС) повинен бути перш за все адекватно описаний, повинні бути побудовані повні і несуперечливі функціональні та інформаційні моделі ІС. Проте до недавнього часу проектування ІС виконувалося в основному на інтуїтивному рівні із застосуванням неформалізованих методів, заснованих на мистецтві, практичному досвіді, експертних оцінках і дорогих експериментальних перевірках якості функціонування ІС. У 70-х і 80-х роках загрузка...
Це й посприяло появі програмно-технологічних засобів спеціального класу - CASE-засобів, що реалізують CASE-технологію створення і супроводу ІС. Термін CASE (Computer Aided Software Engineering) використовується в даний час в вельми широкому сенсі. CASE-технологія являє собою методологію проектування ІС, а також набір інструментальних засобів, що дозволяють в наочній формі моделювати предметну область, аналізувати цю модель на всіх етапах розробки і супроводу ІС і розробляти додатки у відповідності з інформаційними потребами користувачів. Успішне впровадження CASE-засобів має забезпечити такі вигоди як: В· високий рівень технологічної підтримки процесів розробки і супроводу ПЗ; В· позитивне вплив на деякі або всі з перерахованих факторів: продуктивність, якість продукції, додержання стандартів, документування; В· прийнятний рівень віддачі від інвестицій в CASE-засоби. ПОСТАНОВКА ЗАВДАННЯ
Потрібно розробити засобами Rational Rose модель вбудованої системи управління роботою телевізора. У телевізорі є наступні пристрої: приймач телевізійного сигналу, пристрій відображення картинки, пам'ять каналів, пам'ять налаштувань, керуючі кнопки, пульт дистанційного керування (ДУ). Управління телевізором здійснюється за допомогою кнопок на корпусі (їх чотири: В«ВКЛ/ВИКЛВ», В«-В», В«+В», кнопка початкової установки) і пульта ДУ. Кнопка В«ВКЛ/ВИКЛВ» дозволяє включати і вимикати телевізор. Після включення телевізора на екран відображається передача, що йде по каналу № 1, при цьому використовуються параметри зображення і значення гучності, збережені в пам'яті настройок. Пам'ять каналів телевізора зберігає до 60 каналів. Канали нумеруються, починаючи з нуля. Послідовне перемикання каналів здійснюється за допомогою кнопок В«-В» і В«+В». Натискання на В«+В» перемикає телевізор на канал з номером, на одиницю великим (з 59-го каналу телевізор перемикається на 0-ою). Натискання на В«-В» перемикає телевізор на канал з номером, на одиницю меншим (з 0-го каналу телевізор перемикається на 59-ий). При натисканні на кнопку початкової установки очищається пам'ять каналів телевізора, після чого здійснюється пошук передач і збереження їх частот в пам'яті каналів. Пошук починається з нижньої межі робочого діапазону телевізора. На екран телевізора виводиться В«синій екранВ». Робоча частота поступово збільшується до тих пір, поки приймач не виявить телевізійний сигнал. Знайдена передача виводиться на екран протягом 10 секунд. Потім пошук продовжується до тих пір, поки не досягнута верхня межа діапазону, або поки не заповнена вся пам'ять каналів. Телевізор приймає керуючі сигнали з пульта ДУ. На пульті ДК розташовані наступні кнопки: - кнопки з цифрами В«0В» ... В«9В» для прямого перемикання каналу (за номером); - кнопки В«П-В» і В«П +В» для послідовного перемикання каналів; - кнопки В«Г-В» і «à +В» для зміни гучності; - кнопки В«МЕНЮВ», В«<В» і В«>В» для доступу до екранному меню. Для прямого перемикання на потрібний канал його номер набирається за допомогою кнопок з цифрами. Після натискання першої цифри протягом 5 секунд очікується натиснення другої. Якщо друга цифра не була натиснута, то номер каналу вважається складається з однієї цифри і здійснюється перемикання на нього. Кнопки В«П-В» і В«П +В» на пульті мають ті ж функції, що і кнопки В«-В» і В«+В» на корпусі телевізора. Кнопки В«Г-В» і «à +В» дозволяють збільшувати або зменшувати гучність. Кожне натискання на В«Г-В» зменшує гучність на одну одиницю, поки вона більше нуля, «à +В» збільшує гучність на одиницю, поки не досягнуто максимальне значення. Поточне значення гучності зберігається в пам'яті настройок. Кнопки В«МЕНЮВ», В«<В» і В«>В» Дозволяють встановлювати значення настоянок, що зберігаються в пам'яті телевізора. При натисканні на кнопку В«МЕНЮВ» внизу екрану виникає напис В«ЯСКРАВІСТЬВ» і смуга, відображає поточне значення яскравості. Кнопками В«<В» і В«>В» яскравість можна зменшити або збільшити. При роботі з меню натискання на всі інші кнопки ігноруються. Після повторного натискання на кнопку В«МЕНЮВ» значення яскравості запам'ятовується в пам'яті налаштувань, і здійснюється перехід до налаштування контрастності. Налаштування контрастності і інших параметрів (чіткості, колірної гами) відбувається аналогічно. Натискання на кнопку В«МЕНЮВ» по закінченні настроювання колірної гами (останнього пункту меню) призводить до закінчення роботи з меню. ГЛОСАРІЙ ПРОЕКТУ
TVScreen Екран телевізора, на який виводиться зображенняTVButtons Кнопки на корпусі телевізора (Вкл/Викл, кнопка скидання налаштувань)TVReceiver Приймач телевізійного сигналуTVConsole Пульт дистанційного керування телевізором - кнопки з цифрами В«0В» ... В«9В» для прямого перемикання каналу (за номером); - кнопки В«П-В» і В«П +В» для послідовного перемикання каналів; - кнопки В«Г-В» і «à +В» для зміни ...гучності; - кнопки В«МЕНЮВ», В«<В» і В«> В»Для доступу до екранному меню. ChannelMemory Запам'ятовуючі пристрої телевізора, використовуване для зберігання каналівSettingsMemory Запам'ятовуючі пристрої телевізора, використовуване для зберігання налаштувань яскравості, контрастності, чіткості та колірної гамиМОДЕЛЬ ВАРІАНТІВ ВИКОРИСТАННЯ
Варіанти використання призначені в першу чергу для визначення функціональних вимог до системі і керують усім процесом розробки. Всі основні види діяльності такі як аналіз, проектування, тестування виконуються на основі варіантів використання. Під час аналізу і проектування варіанти використання дозволяють зрозуміти як результати, які хоче отримати користувач впливають на архітектуру системи і як повинні поводитися компоненти системи, для того щоб реалізувати потрібну для користувача функціональність.
Рисунок 1 - Діаграма варіантів використання АНАЛІЗ ВАРІАНТІВ ВИКОРИСТАННЯ
Варіант використання Перегляд телевізора Описує процес перегляду телевізора. Даний варіант використання починає виконуватися, коли користувач вмикає телевізор. Основний потік подій 1. Користувач вмикає телевізор. 2. На екран телевізора виводиться передача, що йде по каналу № 1. 3. Налаштування гучності і передачі кольору беруться з пам'яті. Варіант використання Перемикання каналу Описує перемикання каналів користувачем. Починає виконуватися, коли користувач хоче перемкнути канал телевізора. Перемикання здійснюється цифровими клавішами на пульті управління (0 .. 9) або клавішами В«Наступний каналВ» і В«Попередній канал В». Основний потік подій 1. Користувач натискає на кнопку потрібного каналу. 2. Система перевіряє правильність введення (номер каналу повинен лежати в діапазоні від 0 до 59) 3. На екран телевізора виводиться передача, що йде по обраному каналу. Альтернативні потоки Натискання кнопки В«Наступний канал В» 1. Користувач натискає кнопку В«Наступний каналВ» 2. Система перевіряє значення поточного каналу і перемикає його на наступний. 3. Якщо значення каналу більше 59, то відбувається перемикання на канал № 0 Натискання кнопки В«Попередній каналВ» 1. Користувач натискає кнопку В«Попередній каналВ» 2. Система перевіряє значення поточного каналу і перемикає його на попередній. 3. Якщо значення каналу менше 0, то відбувається перемикання на канал № 59 Введений номер каналу виходить за межі допустимих значень Якщо введений номер каналу виходить за межі допустимих значень, то перемикання каналу телевізора не відбувається. Варіант використання Зміна гучності Описує зміна гучності телевізора користувачем. Даний варіант використання починає виконуватися, коли користувач бажає змінити гучність. Зміна гучності здійснюється кнопками «à +В» і В«Г-В» для збільшення і зменшення гучності відповідно. Основний потік подій 1. Користувач натискає на кнопку «à +В». 2. Система перевіряє поточне значення гучності. 3. Якщо значення гучності не перевищує максимального значення, то відбувається збільшення гучності. Альтернативні потоки Натискання кнопки В«Г-В» 1. Користувач натискає на кнопку В«Г-В». 2. Система перевіряє поточне значення гучності. 3. Якщо значення гучності більше мінімального значення, то відбувається зменшення гучності Варіант використання Зміна налаштувань Описує зміна налаштувань телевізора користувачем. Даний варіант використання починає виконуватися, коли користувач хоче змінити налаштування телевізора. Зміна налаштувань здійснюється кнопками "<" і">". Попередньо натискається кнопка В«МенюВ» для виводу на екран меню налаштувань. Основний потік подій 1. Користувач натискає кнопку В«МенюВ». 2. Система перевіряє поточне значення яскравості і виводить його на екран. 3. Кнопками "<" і">" Користувач регулює яскравість. 4. Користувач натискає кнопку В«МенюВ». 5. Система перевіряє поточне значення контрастності і виводить його на екран. 6. Кнопками "<" і">" Користувач регулює яскравість. 7. Користувач натискає кнопку В«МенюВ». 8. Система перевіряє поточне значення чіткості і виводить його на екран. 9. Кнопками "<" і">" Користувач регулює чіткість. 10. Користувач натискає кнопку В«МенюВ». 11. Система перевіряє поточне значення колірної гами і виводить його на екран. 12. Кнопками "<" і">" Користувач регулює колірну гамму. Альтернативні потоки Значення параметра виходить за допустимі межі Якщо значення параметра виходить за допустимі межі, то зміна даного параметра не виробляти. Варіант використання Сканування каналів Описує пошук передач і збереження їх частот у пам'яті каналів. Даний варіант використання починає виконуватися, коли користувач хоче здійснити пошук телепередач. Пошук передач починається після натискання кнопки Початковою установки. Основний потік подій 1. Користувач натискає кнопку Початковою установки 2. Починається пошук телепередач, на екран виводиться В«синій екранВ» 3. Робоча частота поступово збільшується до тих пір, поки не виявить телевізійний сигнал. Знайдена передача виводиться на екран протягом 10 секунд. 4. Пошук продовжується поки не заповнена вся пам'ять каналів. ПРОЕКТУВАННЯ СИСТЕМИ
Ієрархія класів системи
Малюнок 2 - Ієрархія класів системи
Опис класів Клас TVScreen Реалізує функції дисплея телевізора. Включає в себе такі методи як: 1. OutputTVSignal (int) - висновок ТВ сигналу на монітор. 2. DisplayMenu () - висновок В«МенюВ» на екран телевізора. 3. DisplayVolumeState (int) - вивід на екран поточного значення гучності. Клас TVButtons Реалізує функції кнопок на корпусі телевізора. Включає в себе такі методи як: 1. Int PowerOnOffButton () - обробити натискання кнопки включення/вимикання телевізора. Клас TVReceiver Реалізує функції приймача телевізійного сигналу. Включає в себе такі методи як: 1. ReceiveTVSignal (int) - прийняти телевізійний сигнал. 2. Int ChannelScan () - пошук телевізійних каналів. Клас ChannelMemory Реалізує функції пам'яті каналів телевізора. Включає в себе такі методи як: 1. SaveChannels () - зберегти частоти каналів в пам'ять телевізора 2. ClearSettings () - очистити пам'ять каналів телевізора. Клас TVController Реалізує головний керуючий блок телевізора. Включає в себе такі методи як: 1. OpenChannel (int) - переключити на вибраний користувачем канал. 2. SetVolume (int) - встановити значення гучності. 3. Menu () - послати повідомлення на висновок В«МенюВ». 4. PowerOnOff () - включити/вимкнути телевізор. 5. FirstSetup () - послати повідомлення на пошук телепередач. Клас TVCon...sole Реалізує функції пульта дистанційного керування. Включає в себе такі методи як: 1. Int DigitalButton () - обробити натискання цифрових кнопок (0 .. 9). 2. Int MoreLessVolumeButton () - обробити натискання кнопок збільшення/зменшення гучності. 3. Int PrevNextChannelButton () - обробити натискання кнопок наступний/попередній канал. 4. Int MenuButton () - обробити натискання кнопки В«МенюВ». 5. Int DefaultSettingsButton () - обробити натискання кнопки Початкової установки. Клас SettingsMemory Реалізує функції пам'яті налаштувань телевізора. Включає в себе такі методи як: 1. SaveSettings () - зберегти настройки яскравості/контрастності/Чіткості/колірної гами в пам'ять телевізора. 2. LoadSettings () - завантажити параметри яскравості/контрастності/чіткості/колірної гами з пам'яті телевізора. 3. ClearSettings () - відновити значення яскравості/контрастності/чіткості/колірної гами за замовчуванням.
Діаграма класів Діаграма класів описує структуру системи, показуючи її класи, їх атрибути і оператори, і навіть взаємозв'язку цих класів.
Рисунок 3 - Діаграма класів
Діаграма кооперації Діаграма кооперації призначена для опису поведінки системи на рівні окремих об'єктів, які обмінюються між собою повідомленнями, щоб досягти потрібної мети або реалізувати деякий варіант використання.
Малюнок 4 - Діаграма кооперації Діаграма станів Діаграма станів описує можливі послідовності станів і переходів, які в сукупності характеризують поведінку модельованої системи протягом усього її життєвого циклу. Діаграма станів представляє динамічну поведінку сутностей, на основі специфікації їх реакції на сприйняття деяких конкретних подій.
Малюнок 5 - Діаграма станів РЕАЛІЗАЦІЯ СИСТЕМИ
Діаграма компонентів. Діаграма компонентів застосовується для моделювання статичного виду системи з точки зору реалізації. Сюди відноситься моделювання фізичних сутностей, розгорнутих в вузлі, наприклад виконуваних програм, бібліотек, таблиць, файлів і документів. телевізор програмний проектування настройка
Малюнок 6 - Діаграма компонентів Генерація коду ChannelMemory.cpp # include "ChannelMemory.h" // # # ModelId = 4930347402CE bool ChannelMemory :: SaveChannels () { } // # # ModelId = 4947C0C900FA ChannelMemory :: ClearSettings () { } ChannelMemory.h # ifndef CHANNELMEMORY_H_INCLUDED_B6AEDCE5 # define CHANNELMEMORY_H_INCLUDED_B6AEDCE5 // # # ModelId = 4930341A0232 // # # Documentation // # # Встановлюється в телевізорі class ChannelMemory { public: // # # ModelId = 4930347402CE // # # Documentation // # # Зберігає канал bool SaveChannels (); // # # ModelId = 4947C0C900FA ClearSettings (); }; # endif/* CHANNELMEMORY_H_INCLUDED_B6AEDCE5 */ SettingsMemory.cpp # include "SettingsMemory.h" // # # ModelId = 49441168035B bool SettingsMemory :: SaveSettings () { } // # # ModelId = 4944118303A9 int SettingsMemory :: LoadSettings () { } // # # ModelId = 4947C0D40186 SettingsMemory :: ClearSettings () { } SettingsMemory.h # ifndef SETTINGSMEMORY_H_INCLUDED_B6AEB25E # define SETTINGSMEMORY_H_INCLUDED_B6AEB25E // # # ModelId = 4944114C03C8 class SettingsMemory { public: // # # ModelId = 49441168035B bool SaveSettings (); // # # ModelId = 4944118303A9 int LoadSettings (); // # # ModelId = 4947C0D40186 ClearSettings (); }; # endif/* SETTINGSMEMORY_H_INCLUDED_B6AEB25E */ TVButtons.cpp # include "TVButtons.h" // # # ModelId = 494B86E901B5 TVButtons :: PowerOnOffButton () { } TVButtons.h # ifndef TVBUTTONS_H_INCLUDED_B6AEBEB2 # define TVBUTTONS_H_INCLUDED_B6AEBEB2 // # # ModelId = 4947BF1F0261 class TVButtons { public: // # # ModelId = 494B86E901B5 PowerOnOffButton (); }; # endif/* TVBUTTONS_H_INCLUDED_B6AEBEB2 */ TVConsole.cpp # include "TVConsole.h" // # # ModelId = 493031890167 int TVConsole :: DigitalButton (int ButtonNumber) { } // # # ModelId = 494B88DF0119 int TVConsole :: MoreLessVilumeButton (int Volume) { } // # # ModelId = 494B88F20148 int TVConsole :: PrevNextChannelButton (int Channel) { } // # # ModelId = 494B8918033C int TVConsole :: MenuButton () { } // # # ModelId = 494B893D038A int TVConsole :: DefaultSettingsButton () { } TVConsole.h # ifndef TVCONSOLE_H_INCLUDED_B6AE884F # define TVCONSOLE_H_INCLUDED_B6AE884F // # # ModelId = 4930314B03C8 // # # Documentation // # # Пульт управління class TVConsole { public: // # # ModelId = 493031890167 int DigitalButton (int ButtonNumber); // # # ModelId = 494B88DF0119 int MoreLessVilumeButton (int Volume); // # # ModelId = 494B88F20148 int PrevNextChannelButton (int Channel); // # # ModelId = 494B8918033C int MenuButton (); // # # ModelId = 494B893D038A int DefaultSettingsButton (); }; # endif/* TVCONSOLE_H_INCLUDED_B6AE884F */ # include { } { } { } { } { } # ifndef # define { public: }; # include { } int { } # ifndef # define { public: int }; # include { } { } { } # ifndef # define { public: }; ВИСНОВОК моделі. вигляді. ВсіСПИСОК ЛІТЕРАТУРИ
1. 2. Смирнова систем. 3. 2003 4. 1992 5. 6. 7. 1997 8. з англ. 9. 10. 11. 12. 13.
|