Платформа ShareTV
Сравнение с MyOwnTV
Система управления IPTV услугами ShareTV имеет ряд конкурентных преимуществ по сравнению с MyOwnTV, приведенные в таблице ниже.
Отличия | MyOwnTV | ShareTV |
Поддержка мультиплатформенности[1] | — | + |
Наличие ТВ-подсистемы | — | + |
Богатая функциональность по управлению видео | — | + |
Гибкость в поддержке нескольких инф. девайсов | — | + |
Возможность использ. другие интернет-сервисы | + | + |
Использование ТВ-подсистемы IPTV платформы | + | — |
Наличие ТВ-подсистемы | — | + |
Богатая функциональность по управлению видео | — | + |
Гибкость в поддержке нескольких инф. девайсов | — | + |
Рис. . Таблица сравнения систем ShareTV и MyOwnTV
Архитектура
ShareTV платформа представляет классическую трех — уровневую архитектуру на с использованием SOA[2] архитектуры.
Рис. . Трехуровневая архитектура ShareTV
Компоненты ShareTV платформы обведены в прямоугольники на рис. 4.3 Платформа содержит ShareTV бизнес логику, базу данных и видео — репозиторий.
Бизнес логика ShareTV управляет пользователями, каналами, клипами и их отношениями. Это платформа с сервисами для видео-контента, созданного пользователями и закачанным в систему, и групп пользователей, работающих с ним.
Платформа сервисов ShareTV предоставляет свои сервисы через веб — сервисы.
ShareTV предоставляется Web Service APIs для:
- Управления каналами
- Управления клипами
- Управление пользователями
- OSS/BSS[3] систем
- Set-Top-Box приложений
ShareTV взаимодействует с внешними компонентами:
- Content Transcoding — компонент, для кодирования/декодирования
- Contact List Management — компонент управления списком контактов
- Content delivery – компонент для доставки видео – контента и взаимодействия с IPTV платформами.
Платформа ShareTV используют механизм «адаптеров» для взаимодействия с внешними компонентами, что позволяет ей быть платформо – независимой и взаимодействовать с несколькими IPTV-платформами.
«Уровень представления» отделен от платформы сервисов. Это позволяет отдельно разрабатывать приложения, адаптировать под требования заказчика отдельно от платформы сервисов.
«Уровень представления» включает в себя приложения:
- Административное приложении
- Приложения по управлению каналами
- ТВ-приложение, ShareTV ТВ-подсистема, проигрываемое на телевизоре, описывается в разделе [6]
ShareTV ТВ-подсистема
Общее
С каждым годом, по мере увелечения скоростей сетей, приложения в области IPTV становятся все более востребованными, доступными, все более сложными, больше и больше приближаясь по бизнес-логике, и по возможностям пользовательского интерфейса к Web и desktop приложениям.
Для персонализации телевещательных услуг был создан ряд сложных промышленных информационных систем – AmigoTV, MyOwnTV [2], ShareTV [3] и др. Среди них заметно выделяется система ShareTV, которая является, по сути, продолжением линейки первых двух продуктов и является, фактически, продуктом «следующего поколения» в данной области. Система ShareTV, созданная одной из ведущих компанией в сфере IPTV, Alcatel-Lucent, впервые поддерживает интеграцию с различными IPTV платформами и видео-репозиторями, а также обладает «богатой» функциональностью по персонализации телеуслуг.
В данном разделе представлена одна из подсистем ShareTV системы, ТВ-подсистема, по управлению и просмотру видео для конечных пользователей. Таким образом, подсистема и вся система в целом поддерживают самые последние тенденции развития IPTV-индустрии. На рис. 5.1 показано место подсистемы в предметной области.
Рис. . Место подсистемы ShareTV ТВ-подсистемы в предметной области.
Опишем место ТВ-подсистемы в системе ShareTV. ТВ-подсистема является одним из приложений ShareTV платформы, взаимодействующее с бизнес-логикой платформы через предоставляемые платформой сервисы. Как уже говорилось, подсистема предназначается для работы с Set-Top-Box, в отличие от обычных web-приложений.
Рис. .:Место ТВ-подсистемы в платформе ShareTV
Функциональное описание
Основная функциональность
ТВ-подсистема обладает следующей базовой функциональностью. Приложение позволяет:
- Получать уведомления о новых клипах, опубликованных в канале
- Просматривать список общедоступных каналов
- Просматривать список скрытых каналов
- Просматривать клипы в канале
- Подписываться на клипы/каналы
- Оставлять мнение о канале (Голосование, Рекомендация)
- Приглашать подписаться на канал и принимать приглашения.
- Отправлять и получать сообщения
Use case Модель
В работе предложена модель использования системы, связи между случаями использования и детальные описания каждого таких случаев. Композиция случаев использования представлена на рис. 4.3
Рис. .: Use case модель.
Полный список случаев использования и разбиение их по пакетам можно посмотреть в приложении 1.
Использование ICONIX процесса разработки
Особенностью визуального моделирования системы является использование Enterprise Architect 7.0, UML 2.0 и ICONIX[4] процесса разработки.
В рамках подготовки к диплому был прослушан ряд тренингов по EA.
Список тренингов:
- «Software Analysis and Design with UML 2.0», «Alcatel-Lucent», 2007
- «Software Analysis and Design with Enterprise Architect», «Alcatel-Lucent», 2007
Enterprise Architect — …
ICONIX процесс разработки — …
Для каждого случая использования составлена Robustness диаграмма.
Robustness диаграмма — ..
Рис. .: Пример Robustness диаграммы
Аналогично для каждого случая использования составлена диаграмма Sequence диаграмма. См. Приложении 2.
Преимуществами использования ICONIX процесса:
- Процесс позволяет позволяет сократить количество необходимых UML диаграмм
- Robustness диаграммы позволяют связать их более плотно с доменной моделью, что сокращает интервал между диаграммами и реализацией
- Enterprise Architect является единым инструментом для хранения и работы с бизнес-требованиями, моделями сценариев, доменной моделью, и может быть использована даже как bug-tracking-system. Это позволяет ускорить и упростить проектирование и поддержку системы.
Архитектура
Подсистема ShareTV STB является компонентом ShareTV платформы с сервис – ориентированной архитектурой (SOA).
Сама ShareTV STB подсистема представляет собой Web приложение с клиент-серверной компонентной архитектурой. Ниже представлена предложенная модель компонент подсистемы.
Модель компонент
ShareTV STB подсистема состоит из следующих компонент:
- STB Browser Application – приложение, содержащее в себе HTML разметку и JavaScript библиотеки
- STB Web Site – Set-Top-Box веб-сайт
- STB Model Cache — кэш Set-Top-Box приложения
- STB Presenter – библиотека, содержащая презентеры ТВ-подсистемы для взаимодействия с моделью.
- STB Common Presenter — библиотека, содержащая общие презентеры всех приложений для взаимодействия с моделью.
- Common Controller – стандартная библиотека контроллеров, содержащая базовые классы, предоставляющие доступ к прокси – классам веб – сервисов
Взаимодействие с ShareTV системой
ТВ-подсистема использует бизнес–логику ShareTV платформы через Web Service APIs для ТВ-приложений.
Используемые сервисы системы ShareTV:
- Channel Management – сервис, предоставляющий функциональность по управлению каналами
- Clip Management – сервис, предоставляющий функциональность по управлению клипами
- User Management – сервис, предоставляющий функциональность по управлению пользовательскими данными.
- User Group Management – сервис, предоставляющий функциональность по управлению группами пользователей.
- Message Management – сервис, предоставляющий функциональность по управлению сообщениями.
Протоколы взаимодействия: SOAP, WSDL
Взаимодействие с видео репозиторием
Izone web — сайт предоставляет видео контент для ТВ-приложения.
В основном, сайт предоставляет ссылки на видео–контент в опубликованном ТВ-приложении. В итоге браузер получает ссылки на видео–контент с iZone сервера и проигрывает видео, используя встроенный (или сторонний) проигрыватель видео.
Например, для MS IPTV платформы используется Windows Medea Server ??? и Tasman Browser.
Протоколы взаимодейсвия: MMS
Использование MVP шаблона
MVP, Model–View-Presenter — архитектура программного обеспечения, в которой модель данных приложения, пользовательский интерфейс и управляющая логика разделены на три отдельных компонента, так, что модификация одного из компонентов оказывает минимальное воздействие на другие компоненты.
Благодаря использованию MVP шаблона, достигается переносимость приложения для использования различными информационными устройствами.
Функциональность web-страниц вынесена в соответствующие «презентеры», таким образом получаем дерево наследований презентеров, представленное на рис.5.5. Благодаря использованию шаблона MVP достигается гибкость и переносимость ТВ-приложения на другие информационные устройства.
Рис. .: Пример использования MVP шаблона
Реализация ShareTV ТВ-подсистемы
Пример приложения
Рис. Стартовая страница
Рис 2. Страница со списком каналов
Технологии
Во время заработки системы были использованы следующие технологии:
- Enterprise Architect
- .NET framework 2.0 (ASP.NET, C#)
- Subversion
- NUNIT