Курсова робота
З дисципліни «Графічне та геометричне моделювання та інтерактивні системи»
На тему «Редактор mp3 тегів»
Зміст
Вступ.. 3
Постановка задачі 4
Інформаційне забезпечення.. 5
Алгоритм розв’язання задачі 6
Діаграми класів. 6
Програмне забезпечення.. 8
Висновки.. 10
Список використаної літератури.. 11
Додаток 1. Наочне зображення діаграми прецедентів.. 12
Додаток 2. діаграма послідовності з показаними на ній операціями. 13
З розвитком науково-технічного прогресу практично у всіх сферах діяльності людини відбувається широке застосування інформаційних технологій, заснованих на використанні електронно-обчислювальних машин (ЕОМ). Сьогодення вже важко уявити без комп’ютерів, та іншої електронної техніки. Саме завдяки їм стала можливою швидка переробка величезних обсягів інформації, виконання різних видів робіт, пов’язаних з обробкою текстових та графічних файлів, організація передачі інформації, збереження її значних обсягів електронним способом. Стрімке впровадження комп’ютерів не тільки в сфері управління виробництвом, але також на транспорті, в банківській системі, системі освіти та інших галузях призвели до того, що десятки мільйонів людей у всьому світі виявились втягнутими у взаємодію людини з комп’ютером.
Багато людей у наш час слухають музику у цифрових форматах: мр3,ogg, wma…Але найросповсюдженим форматом є мр3. Файл мр3 містить теги які містять інформацію про пісню. За допомогою програми Tag Reader можливо продивитись, або змінити інформацію про саму пісню, виконавця, або альбом.
Програма Tag Reader призначена для створення, або редагування мр3 тегов. Файл мр3 містить теги ID3v1 та ID3v2 (першої, та другої версії). ID3v1 містить таку інформацію: виконавець треку, альбом, назву треку, рік Ії випуску, коментарі що до треку, та стиль музики, до якого належить ця пісня.
Теги першої мають таку будову: інформація про виконавця треку, назва треку, альбом, рік виходу пісні, коментарі що до треку, стиль музики до якого належить ця пісня.
Теги другої версії знаходяться на початку файлу, у першому рядку. ID3v2 містять таку інформацію: виконавець треку, альбом, назву треку, рік її випуску, коментарі що до треку (які не мають фіксованої довжини), яким конвертором був конвертований, та стиль музики, до якого належить ця пісня.
Спочатку була розроблена діаграма прецедентів, на якій зображено список операцій, що виконує система.
На слідуючому етапі були розроблені класи на основі яких була побудована діаграма класів.
Потім була створена діаграма послідовностей, на основі якої було згенеровано діаграму співпраці.
У діаграмі компонентів класи були розбиті по компонентах.
Вхідна інформація, тобто дані, що використовуються як вхідні для прийняття рішень системою:
· Звуковий файл в форматі mp3,(оскільки тільки в цьому форматі є підтримка тегів першої та другої версій);
Вихідна інформація, тобто данні що з’являються в результаті роботи системи:
· Теги першої версії (ID3v1);
· Теги другої версії (ID3v2);
· Безпосередньо сам звуковий файл;
Для вирішення поставленої задачі можуть бути використані засоби UML (Unified Modeling Language) – уніфікованої мови моделювання, яка була розроблена для специфікації, конструювання, відображення та документування складних програмних систем. На сьогоднішній день UML знаходить широке застосування в якості неофіційного стандарту при розробках у таких областях, як керування вимогами до інформаційних систем; моделювання бізнес-процесів; аналіз, проектування, кодування і тестування програмного забезпечення. UML може бути використаний не лише для уніфікації представлення даних щодо ІС, але і для їхньої інтеграції, спрямованої на підвищення адекватності багато-модельного дослідження складних систем. Опис інформаційних процесів використовуються для опису технології обробки даних в ІС. На основі описаної технології визначаються загрози інформації в ІС.
У рамках розробленої методики при специфікації ІС використовуються наступні графічні діаграми UML:
· Діаграма класів – дозволяє описати структуру інформаційних об’єктів ІС. На даній діаграмі зображуються взаємозв'язки структурного характеру, які не залежать від часу та реакції системи на зовнішні події;
· Діаграма станів – дозволяє відобразити зміни станів окремого об'єкта чи суб’єкта ІС представляючи його у вигляді спеціального орієнтованого графа;
· Діаграма діяльності - використовуються для опису інформаційних процесів;
· Діаграма послідовності – служить для моделювання характеристик взаємодії передачі і прийому повідомлень між об'єктами ІС;
· Діаграма кооперації - призначена для специфікації структурних аспектів взаємодії;
· Діаграма компонентів – дозволяє відобразити залежності між суб’єктами програмного середовища ІС;
· Діаграма розгортання – містить інформацію щодо структури програмно-апаратних засобів ІС.
Сукупність вказаних діаграм відображає ієрархічну структуру ІС (вертикальні зв'язки).
Для моделювання правил доступу пропонується використовувати діаграми діяльностей (activity diagram) і діаграми класів (class diagram). Діаграми діяльностей можуть забезпечити моделювання алгоритмів роботи компонентів ІС, діаграми класів - моделювання структури системи.
На сьогодні для UML-моделювання існує широкий вибір програмних засобів. Найбільше розповсюдженими пакетами програм є Rational Rose, Visual UML, BPwin, Silverrun, Process Analyst, Together, System Architect, Objecteering та інші. Для побудови UML-діаграм можна використовувати Microsoft Visio. Оскільки UML призначений для об’єктно-орієнтованого проектування систем, окремі програмні продукти забезпечують розробку структури програми включаючи засоби захисту інформації. Зокрема Rational Rose забезпечує комплексність підходу і інтеграцію з MS Visual Studio на рівні прямої й оберненої генерації кодів, інжиніринг і реінжиніринг модулів і бібліотек форматів EXE, DLL, TLB, OCX, підтримку CORBA, IDL, ADO, Java.
Перед тим як приступити до безпосереднього проектування системи слід визначитися з тим, що саме ми бажаємо отримати в якості реалізованого продукту. Для цього розглянемо безпосередньо приклади використання розроблюваної системи користувачем. Основною ціллю створення даного продукту є вирішення задачі перегляду та редагування тегів першої та другої версії, окрім того передбачена функція швидкого перегляду файлу, тобто його прослуховування, на випадок, якщо користувач взагалі не знає з яким файлом він в даний момент працює. Крім даної функції необхідно також реалізувати певні сервісні можливості, до яких можна віднести зручність зміни визначення функції, можливість зберігання визначення та результатів роботи системи, а також коректну обробку помилок як користувача, так і тих, що виникають в наслідок проблем з системними ресурсами.
Наглядне зображення подано у головній діаграмі прецедентів в додатку 1.
Цей вид діаграм дозволяє створити список операцій, що виконує програма TagReader, а точніше функціональні можливості програми у графічному вигляді який є найбільш простим і зрозумілим для користувача. Часто цей вид діаграм називають діаграмою функцій, тому що на основі набору таких діаграм створюється список вимог до системи і визначається безліч виконуваних системою функцій.
Кожна така діаграма, як її звичайно називають - Use case - це опис сценарію поводження, у якому впливають діючі обличчя (Actors).
Даний тип діаграм використовується при описі бізнес процесів автоматизованої предметної області, визначення вимог до майбутньої програмної системи.
Додаткові прецеденти уточнюють окремі частини з метою опису послідовності дій у разі різних варіантів вибору операцій користувачем або ж виникненні тих чи інших помилок. Опис цих прецедентів надано в додатковій документації моделі проекту, створеної засобами Rational Rose.
Діаграма класів (class diagram) Служить для представлення статичної структури моделі системи в термінології класів об’єктно-орієнтованого програмування. Діаграма класів може відбивати, зокрема, різні взаємозв’язки між окремими сутностями предметної області, такими, як об’єкти і підсистеми, а також описує їхню внутрішню структуру і типи відносин. На даній діаграмі не вказується інформація про тимчасові аспекти функціонування системи. З цьої точки зору діаграма класів є подальшим розвитком концептуальної моделі проектованої системи.
Цей тип діаграм дозволяє створювати логічне представлення системи, на основі якого створюється вихідний код описаних класів.
До діаграми класів типу entities увійшли два класи – це FileInfo та TagContent, в яких чітко описані операції та атрибути класів.
Клас FileInfo містить такі атрибути
· ID3v1 : String
· ID3v2 : String
Над цими атрибутами можна виконувати такі операції
· Copy to ID3 v1
· Copy from ID3 v1
· Create New Tag
· Enable/Disable ID3 v1 tag
· Enable/Disable ID3 v2 tag
До діаграми класів типу controls увійшов клас ControlButtons. Він містить такі атрибути:
· Play
· Pause
· Stop
· Open
Значки діаграми дозволяють відображати складну ієрархію систем, взаємозв'язку класів (Classes) і інтерфейсів (Іnterfaces). Ratіonal Rose дозволяє створювати класи за допомогою даного типу діаграм у різних нотаціях. схожого на хмару. І звичайно ж, Ratіonal Rose дозволяє створювати діаграму класів в уніфікованій нотації.
Систему можна розділити на два логічних блоки, кожен з яких буде реалізовано певним набором класів.
· Логічний рівень системи. Як зазначалось раніше, цей рівень відповідає за виконання основних обчислювальних функцій системи й управління її роботою.
· Рівень інтерфейсу користувача. Відповідає за надання користувачеві необхідних засобів для редагування тегів, роботи з файлами та управління процесом прослуховування.
В додатку 2 приведена діаграма послідовності з показаними на ній операціями.