Главная > Информатика, программирование > Розробка моделі програмного забезпечення для телевізора в середовищі Rational Rose

Розробка моделі програмного забезпечення для телевізора в середовищі Rational Rose


25-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.